More API for Sounds

I think we can all agree that sounds on roblox lack a lot of useful information and tools for us to use. The only thing we can do is play/stop a sound, set its volume, and set its “pitch” (which is just its speed).

I’ve mentioned this before in the past, but here’s a list of things I’d like to see from sounds

[ol]
[li]A separated Pitch and Tempo. [/li]
[li]An IsPlaying property that actually functions correctly[/li]
[li]A way to get the length of the sound, as well as the current time point if its playing[/li]
[li]Events for when a sound is played and stopped[/li]
[li]An argument with Play() to specify where the sound should start at.[/li]
[li]Access to the amplitude and frequency data of the file so we can create effects of a sort.[/li]
[li]Sound Filtering and ‘per sound object’ reverb options[/li]
[li]I could go on and on. Just a lot of general things that make sounds more awesome to work with.[/li]
[/ol]

3 Likes

Double post. Sorry :stuck_out_tongue:

1 Like

Okay I guess – what is tempo though?

The current one actually does work, but just not from server scripts. If you check it from a local script it functions normally – the only reason it doesn’t really work on the server is because the sound is never played on the server.

clone for ROBLOX CEO

clone for ROBLOX CEO

10/10 would tap again. Right now it’s impossible to synchronize sounds across clients :frowning:

No idea what that is, but sounds cool

Echo needs to lrn2audio

Tempo is the speed the sound plays at. Currently higher pitch = higher tempo. That should be changed because it makes no sense.

Nope. Not for me. With or without FE.

What is wrong with IsPlaying?
(what doesn’t work about it? or does it just not work in general?)

[ol]
[li]Yes[/li]
[li]YES[/li]
[li]YES[/li]
[li]yes[/li]
[li]yes[/li]
[li]I don’t believe this would ever happen[/li]
[li]yus[/li]
[/ol]

[quote] What is wrong with IsPlaying?
(what doesn’t work about it? or does it just not work in general?) [/quote]

When the sound stops playing, IsPlaying never goes false

I’d like local soundservice properties like lighting + filtering enabled, and sound a property in parts .SoundDistance which is how far away it can be heard from.

Yes, and there needs to be ‘distance’ (in studs) and actual volume. I hate that they are mixed in because all audio files have different amplification and so that just makes the audio be heard for very long distances or too short. We need better sound adjusting APIs.

My thread on this died :frowning:

Sound.Pitch --should change the pitch of the audio
Sound.Temp --should change the tempo of the audio
Sound.Speed --should change both the pitch and the tempo. Default = 1
Sound.Length --should be a number representing how long the audio is
Sound.AudibleDistance --should be the number of studs the audio is clearly audible at (that is, end volume == Sound.Volume)
Sound.VolumeDistanceFactor --should be a number representing how much the volume increases the farther you get away from the playing position
Sound:SetSecondsFromBeginning(number seconds) --should set the position of the audio relative to the beginning of the audio
Sound:GetSecondsFromBeginning() --should return the position of the audio relative to the beginning.
Sound:AddEffect(Effect effect, ...) --Add an effect to a sound (e.g. fade-in, fade-out, silence) with the properties specified
Sound:RemoveEffect(Effect effect) --Remove an effect from a sound
Sound:HasEffect(Effect effect) --Checks if the Sound object has the Effect effect.
Sound:SetTone(Tone tone) --When the sound is played and doesn't have a SoundId, this tone is played. Tone is an enum representing the tone (e.g. square, sine, triangle, sawtooth, etc.)
Sound:SetSampleRate(SampleRate rate) --Sets the sample rate of the audio. By default this is 44100Hz.
Sound:SetChannel(Channel channel) --Sets what channel the audio will be outputted to. By default this is 'Both'. (Use: make sounds appear as if coming from the left or right)
1 Like

Hey, admins, where is that sound engine you promised use like 10 months ago? :swag:

I’m pretty sure it’s already in. They just haven’t updated the API.

1 Like

Not to bring up the taboo, but, uh

Articulated physics.

Anyways, add “Be able to set the position of the sound” to the list.

This would be especially helpful in making awesome interactive music implementation into games.

And;

[ol]
[li]Change gain +6 DB and - 6 DB[/li]
[li]Change high, medium and low[/li]
[li]Treble[/li]
[li]Echo[/li]
[li]Fade in/out[/li]
[li]Reverb/Phaser[/li]
[li]Reverse[/li]
[li]Equalization[/li]
[li]Tremolo [/li]
[li]MIDI Support[/li]

[/ol]

[quote] And;

[ol]
[li]Change gain +6 DB and - 6 DB[/li]
[li]Change high, medium and low[/li]
[li]Treble[/li]
[li]Echo[/li]
[li]Fade in/out[/li]
[li]Reverb/Phaser[/li]
[li]Reverse[/li]
[li]Equalization[/li]
[li]Tremolo [/li]
[li]MIDI Support[/li]

[/ol] [/quote]
Might as well remove every fault in Roblox, and compete with Cry engine, Unity, and Unreal…

I won’t let this die :frowning:
Bump.

[quote] I won’t let this die :frowning:
Bump. [/quote]

This is something that would improve every game incredibly much.

Even Guitar Hero/Audiosurf type games could be done more easily

For 22 thumbs ups, I’m surprised this thread died. After making a suggestion about this, Sorcus said they’d be looking at the feature requests more often, but it seems it only is happening in the “Web Features” section.

Then again, maybe this means they’re secretly working on it? Wouldn’t want to announce another Articulated Physics.