A simple Lua script which plays a .wav sound whenever replay buffer is saved. | |
## Installation | |
1. Download Half-Life 2 City Scanner NPC's camera shutter sound: | |
https://github.com/sourcesounds/hl2/blob/master/sound/npc/scanner/scanner_photo1.wav | |
--OR-- | |
Use any .wav sound but make sure to match its name either in "Beep on replay buffer save.lua" (edit with any text editor) or rename your .wav file to "sound_npc_scanner_scanner_photo1.wav". | |
2. Put it in the same location with "Beep on replay buffer save.lua". | |
A good way is to create a separate "scripts" folder in %AppData%\obs-studio\ and keep all your scripts there in case you need to backup your OBS Settings. | |
3. OBS -> Tools -> Scripts -> + | |
This Lua script was downloaded from https://gist.github.com/snakecase/e816384a071cec31efbb4b9e429c108d | |
Credits: upgradeQ (https://gist.github.com/upgradeQ/b2412242d76790d7618d6b0996c4562f), gima (https://gitlab.com/gima/obsnotification) | |
Thank you guys! |
local obs = obslua | |
local ffi = require("ffi") | |
local winmm = ffi.load("Winmm") | |
-- Put a sound of your choosing next to "Beep on replay save.lua" and don't forget to match its name either in code below or rename your file. | |
PROP_AUDIO_FILEPATH = script_path() .. "sound_npc_scanner_scanner_photo1.wav" | |
ffi.cdef[[ | |
bool PlaySound(const char *pszSound, void *hmod, uint32_t fdwSound); | |
]] | |
function playsound(filepath) | |
winmm.PlaySound(filepath, nil, 0x00020003) | |
end | |
function on_event(event) | |
if event == obs.OBS_FRONTEND_EVENT_REPLAY_BUFFER_SAVED | |
then playsound(PROP_AUDIO_FILEPATH) | |
end | |
end | |
function script_load(settings) | |
obs.obs_frontend_add_event_callback(on_event) | |
end | |
-- This Lua script was downloaded from https://gist.github.com/snakecase/e816384a071cec31efbb4b9e429c108d | |
-- Credits: upgradeQ (https://gist.github.com/upgradeQ/b2412242d76790d7618d6b0996c4562f), gima (https://gitlab.com/gima/obsnotification) | |
-- Thank you guys! |
Is there an easy way to adjust the audio level with the script? This plays super loud. I could just edit the audio, but I assume there's a simple bit of code that would work...
I googled a little and unfortunately didn't find any solution which I can implement. I guess editing the audio file is the easiest way.
Here is a -10 dB edit (approximately -70%). Don't forget to rename .mp4 to .wav (GitHub doesn't support .wav in comments).
sound_npc_scanner_scanner_photo1.mp4
thank you so much :)
Great and simple script! Thank you. I've found another Half Life 2 sound effect that fits much better and is also conveniently quieter: It's called "bugreporter_succeeded.wav" in the "common" folder of the HL2 sound folder, which can be downloaded online somewhere (took me a few seconds to google it).
Great and simple script! Thank you. I've found another Half Life 2 sound effect that fits much better and is also conveniently quieter: It's called "bugreporter_succeeded.wav" in the "common" folder of the HL2 sound folder, which can be downloaded online somewhere (took me a few seconds to google it).
This one is being used by SteamVR natively for screenshots. I didn't want to confuse them thus decided to go with what came to mind first. But I'm glad you found what suits you better.
oh that makes sense! It does sound familiar. I don't use SteamVR but it might even be Steam's default screenshot sound effect, now that I think about it...
Thanks for this. Works great and was exactly what I was looking for!
Worked great! Although the revised -10db sound is still just a tad too loud, so here's a revised quieter version of that revision (-15db in total, I think). Other than that, the script worked flawless :)
(attached it as .mp4 because non-authors can't send .mp3 for some reason. just make sure to rename it to .wav)
https://user-images.githubusercontent.com/36707936/197033922-51507751-bab9-468f-88f5-18f1b36af11d.mp4
Is there an easy way to adjust the audio level with the script? This plays super loud.
I could just edit the audio, but I assume there's a simple bit of code that would work...