Jump to content


Photo

Super Sound System Dll (new: 3.4)


  • Please log in to reply
490 replies to this topic

#1 tsg1zzn

tsg1zzn

    GMC Member

  • New Member
  • 1163 posts
  • Version:Unknown

Posted 24 April 2005 - 01:27 PM

Super Sound System
for GM 5.0 and above
Version 3.4
by tsg1zzn: trondsg@gmail.com
-------------------------------------------------------------------------------------
Features:
  • Plays Ogg Vorbis and Wav
  • Very easy to use
  • Change frequency
  • Change volume
  • Change panning
  • Play once or loop.
  • Set/get the current playback frequency (per sound). Great for car engine sounds.
  • Set/get the current volume (per sound).
  • Set/get the current panning (per sound).
  • Load and unload sounds at need.
  • Check if a sound is playing once, playing looped, paused or stopped.
  • Set and get the position of a playing, looping or paused sound.
  • Get the length of a sound.
Version 3.4 is an update that adds sound streaming (from disk) and there should be no more crashes if SS_Unload() is called on game end.

Important note regarding version 3.2 and above: Some scripts that previously returned -1 on failure now returns an error code less than 0 (-1 or -2) on failure, so change your code to check for a value less than 0 instead of -1 for these scripts.

Download link for version 3.4:
http://www.yourfileh...stem3.4_dll.zip

The dll is free to use for both free and commercial games.

Edited by tsg1zzn, 19 March 2009 - 10:23 AM.

  • 9

#2 dethev

dethev

    GMC Member

  • New Member
  • 32 posts

Posted 24 April 2005 - 02:27 PM

Awesome tsg1zzn, simple to use and has the functions I need. Not to overcomplicated too. Anyone that needs an ogg vorbis only dll should get this instead of Shaltif's.
  • 0

#3 scream681

scream681

    Nick Larin

  • New Member
  • 1152 posts

Posted 25 June 2005 - 02:45 PM

This is a great dll, I wonder why this topic got so little replies, you saved my a** :D Now i can play OGG in TUC2. Thanx dude :) .

EDIT: Can you add a function to check if a sound is playing?

Edited by scream681, 25 June 2005 - 07:18 PM.

  • 0

Posted Image


#4 HolyCause

HolyCause

    Music Composer

  • New Member
  • 830 posts

Posted 25 June 2005 - 06:10 PM

Hello,

Anyone that needs an ogg vorbis only dll should get this instead of Shaltif's.

<{POST_SNAPBACK}>

Indeed. I considered using Shaltif's SXMS DLL but it's way too complicated for just playing *.ogg. This DLL is going to be really useful :D

EDIT: Can you add a function to check if a sound is playing?

I'm for that too. That would very handy ^_^

-- RB :)
  • 0

#5 tsg1zzn

tsg1zzn

    GMC Member

  • New Member
  • 1163 posts
  • Version:Unknown

Posted 27 June 2005 - 08:26 AM

EDIT: Can you add a function to check if a sound is playing?

<{POST_SNAPBACK}>

I'll try, but don't expect too much. No guarantees at all.
  • 0

#6 pythonpoole

pythonpoole

    Scorpion Software

  • New Member
  • 1894 posts

Posted 27 June 2005 - 08:48 AM

I have no and take no responsibilities for the results of improper or proper usage in case this usage results in problems, included, but not limited to; damage, poisoning, terror attacks, vomit on floor, worm in apple, virus in any place, windows in doors, non-working or partially defect breakes, power outage or emtpy swimming pools.


Thats not fair.. my swimming pool is empty.... I don't like this agreement.... what he says he doesn't take responsibility for actually does happen ;) btw i also have a window in a door ^_^
  • 0
- Ben

#7 tsg1zzn

tsg1zzn

    GMC Member

  • New Member
  • 1163 posts
  • Version:Unknown

Posted 28 June 2005 - 07:09 PM

For those of you who are waiting for a function to check if a sound is playing:

I am working on it. In fact it works already. I'm just going to add some extra goodies like position check and set before release.

EDIT: Ok, release in 5 minutes.

This is a great dll, I wonder why this topic got so little replies, you saved my a** :D Now i can play OGG in TUC2. Thanx dude :( .

<{POST_SNAPBACK}>

It's because it works. If it trew a lot of errors you can bet hundreds of people would have flooded the topic with "it doesn't work for me either" within a minute.

Edited by tsg1zzn, 28 June 2005 - 07:54 PM.

  • 2

#8 scream681

scream681

    Nick Larin

  • New Member
  • 1152 posts

Posted 28 June 2005 - 07:54 PM

Cool, keep up the good work.
  • 0

Posted Image


#9 tsg1zzn

tsg1zzn

    GMC Member

  • New Member
  • 1163 posts
  • Version:Unknown

Posted 28 June 2005 - 08:01 PM

It is now released. Here is the download link for version 2: http://home.no.net/t...system2_dll.zip

EDIT: Wrong link.
EDIT: Wrong link again. Should be fixed now.

Edited by tsg1zzn, 28 June 2005 - 08:02 PM.

  • 0

#10 NetCept

NetCept

    GMC Member

  • New Member
  • 77 posts

Posted 29 June 2005 - 05:35 PM

is this dll compitable with Boosteds engine?
  • 0

#11 tsg1zzn

tsg1zzn

    GMC Member

  • New Member
  • 1163 posts
  • Version:Unknown

Posted 29 June 2005 - 06:27 PM

I have no idea what Boosteds engine is. Maybe if you told me, I could answer. :lol:
  • 0

#12 scream681

scream681

    Nick Larin

  • New Member
  • 1152 posts

Posted 04 July 2005 - 07:24 PM

DO you need to call the dll to stop functioning at the game end? All the other dlls needed, but it seems like this one dont have a function for stopping its function. Does it unload the files when the game ends?

Edited by scream681, 04 July 2005 - 07:25 PM.

  • 0

Posted Image


#13 Flashback

Flashback

    Lord of the Ferrets

  • New Member
  • 489 posts
  • Version:Unknown

Posted 05 July 2005 - 03:14 AM

Ah, so very good - You're saving me 200kb download size on my game by letting me use OGGs! Now in the credits of Scoperta Solare!
  • 0

#14 tsg1zzn

tsg1zzn

    GMC Member

  • New Member
  • 1163 posts
  • Version:Unknown

Posted 10 August 2005 - 07:00 PM

DO you need to call the dll to stop functioning at the game end? All the other dlls needed, but it seems like this one dont have a function for stopping its function. Does it unload the files when the game ends?

<{POST_SNAPBACK}>

As long as the game executable is not running, nothing stays in memory. So don't worry, be happy. <_<
  • 0

#15 GmDude66

GmDude66

    GMC Member

  • New Member
  • 348 posts
  • Version:Unknown

Posted 10 August 2005 - 07:12 PM

if this could play .mp3's of any bitrate/sampling rate i would download it right away. ummm shaltifs if to confusing for just making a mp3 player...
  • 0

#16 Tetria

Tetria

    GMC Member

  • New Member
  • 12 posts

Posted 24 August 2005 - 07:20 PM

I agree with GmDude66, but any way. I've been wondering how to have ajustable volume for awhile. And now I have more than that. This is a definate must have.
  • 0

#17 armigus

armigus

    GMC Member

  • New Member
  • 94 posts

Posted 29 August 2005 - 02:10 PM

GmDude, you can convert your mp3 files to ogg. Mp3 Ogg Lab can do the job for free. Then SuperSound can play your music.
  • 0

#18 Aqwilla

Aqwilla

    GMC Member

  • New Member
  • 173 posts

Posted 02 September 2005 - 11:25 AM

Does this have 3D sound? This would be usefful for GM 5,x games since this Gm doesint have this funcion...
  • 0

#19 tsg1zzn

tsg1zzn

    GMC Member

  • New Member
  • 1163 posts
  • Version:Unknown

Posted 02 September 2005 - 02:50 PM

It doesn't have 3d sound support. Only left/right panning.
  • 0

#20 Aqwilla

Aqwilla

    GMC Member

  • New Member
  • 173 posts

Posted 03 September 2005 - 08:59 AM

So you can make it, can you?
  • 0

#21 ffalcon2009

ffalcon2009

    GMC Member

  • New Member
  • 32 posts

Posted 03 September 2005 - 12:34 PM

I put the dll in the GM6 folder and can't hear the ogg when I play it with the sound adder.
  • 0

#22 PLAY: More

PLAY: More

    Press F8 to enter BIOS

  • New Member
  • 824 posts

Posted 03 September 2005 - 12:44 PM

I put the dll in the GM6 folder and can't hear the ogg when I play it with the sound adder.

<{POST_SNAPBACK}>

Maybe you didn't call the DLL?
  • 0

#23 tsg1zzn

tsg1zzn

    GMC Member

  • New Member
  • 1163 posts
  • Version:Unknown

Posted 03 September 2005 - 02:44 PM

I put the dll in the GM6 folder and can't hear the ogg when I play it with the sound adder.

<{POST_SNAPBACK}>

Did you try the example?
  • 0

#24 GamerGuy12188

GamerGuy12188

    GMC Member

  • New Member
  • 21 posts
  • Version:GM8

Posted 22 October 2005 - 05:25 PM

The SS_SetSoundPosition fuction for this dll isn't working for me. All it does is restart the music.

This is how I called it:
SS_SetSoundPosition(handle,get_integer("New Position",50000));

I'm using GM6.1, by the way.
  • 0

#25 tsg1zzn

tsg1zzn

    GMC Member

  • New Member
  • 1163 posts
  • Version:Unknown

Posted 22 October 2005 - 08:36 PM

The SS_SetSoundPosition fuction for this dll isn't working for me. All it does is restart the music.

This is how I called it:
SS_SetSoundPosition(handle,get_integer("New Position",50000));

I'm using GM6.1, by the way.

<{POST_SNAPBACK}>

Hmm that's right and it's very strange. I've got one test program in which it works and I'm using almost the same procedure in the DLL and it doesn't work. No idea why.

EDIT: There were two errors in the script and one error in the function. I have uploaded a fixed version. Here is the changed line (the last line) in the script SS_SetSoundPosition().

Replace last line with this:
return real(external_call(global.dll_SS_SetSoundPosition,argument0,strin
g(argument1)))+1;

You don't need to download again if you're not checking the result. The command will work properly with the old dll and the new script, but it will return 0 whatever garbage you put into it. The fixed versions returns 0 only on failure.

Edited by tsg1zzn, 22 October 2005 - 08:49 PM.

  • 0

#26 Tarik

Tarik

    GMC Member

  • GMC Member
  • 2731 posts
  • Version:GM:Studio

Posted 22 October 2005 - 08:50 PM

Very nice, keep it up!
  • 0

#27 GamerGuy12188

GamerGuy12188

    GMC Member

  • New Member
  • 21 posts
  • Version:GM8

Posted 22 October 2005 - 09:04 PM

OK, it works now. Thanks!
  • 0

#28 terryharman

terryharman

    GMC Member

  • New Member
  • 207 posts

Posted 27 October 2005 - 01:16 PM

How would i go about making it detect that the sound has finished and start a diffrent song playing...or is this not possable?

Many thanks
Great DLL
Terry
  • 0

#29 tsg1zzn

tsg1zzn

    GMC Member

  • New Member
  • 1163 posts
  • Version:Unknown

Posted 27 October 2005 - 02:45 PM

First, play the sound (do not loop it). Then, in the step event of an object, you can check if it's still playing with SS_IsSoundPlaying(sound_handle).

if SS_IsSoundPlaying(sound) then begin
SS_PlaySound(othersound);
end;
  • 0

#30 terryharman

terryharman

    GMC Member

  • New Member
  • 207 posts

Posted 09 November 2005 - 06:29 PM

Hi again, just wodering if you knew how to make it so that if sound is playing it will not play the song again, cos at the moment when i restart my game the song plays 2 times

thanks

terry
  • 0

#31 tsg1zzn

tsg1zzn

    GMC Member

  • New Member
  • 1163 posts
  • Version:Unknown

Posted 09 November 2005 - 07:21 PM

Hi again, just wodering if you knew how to make it so that if sound is playing it will not play the song again, cos at the moment when i restart my game the song plays 2 times

thanks

terry

<{POST_SNAPBACK}>

if SS_IsSoundPlaying(handle) = 0 then begin
  SS_PlaySound(handle);
end;

But, are you sure you don't also don't all the sound files again when you restart the game? If you do, your game will take lots of memory after some time.
  • 0

#32 terryharman

terryharman

    GMC Member

  • New Member
  • 207 posts

Posted 10 November 2005 - 04:47 PM

i want thr fastest way and most reliable way plz
  • 0

#33 tsg1zzn

tsg1zzn

    GMC Member

  • New Member
  • 1163 posts
  • Version:Unknown

Posted 10 November 2005 - 06:27 PM

That's to never use the function game_restart() and put the call to loading and playing the sounds in the Game Start event.
  • 1

#34 GamerGuy12188

GamerGuy12188

    GMC Member

  • New Member
  • 21 posts
  • Version:GM8

Posted 12 November 2005 - 05:18 PM

I have a question. When I loop a song, there is a half-second pause before it plays again. I want it to replay immediately, so that the song seems to be continuous. Is this possible?

EDIT: I noticed that the song finishes before the song position reaches the length variable.

Edited by GamerGuy12188, 12 November 2005 - 05:21 PM.

  • 0

#35 tsg1zzn

tsg1zzn

    GMC Member

  • New Member
  • 1163 posts
  • Version:Unknown

Posted 12 November 2005 - 09:00 PM

I have a question. When I loop a song, there is a half-second pause before it plays again. I want it to replay immediately, so that the song seems to be continuous. Is this possible?

EDIT: I noticed that the song finishes before the song position reaches the length variable.

<{POST_SNAPBACK}>

Most likely this is because the file has some silence at the end, this is normal. Use a program like Audacity to cut off the silence so that the file loops nicer.
  • 0

#36 3dcoder

3dcoder

    GMC Member

  • New Member
  • 278 posts

Posted 13 November 2005 - 08:27 AM

This is very good and I will use it in my current game. Would you like to have your logo or something in the splash screen/intro?

Oh, and is it legal to use this in commercial game?
  • 0

#37 tsg1zzn

tsg1zzn

    GMC Member

  • New Member
  • 1163 posts
  • Version:Unknown

Posted 13 November 2005 - 10:52 AM

This is very good and I will use it in my current game. Would you like to have your logo or something in the splash screen/intro?

<{POST_SNAPBACK}>

You don't need to use the logo as you long put a notice in the credits.

Oh, and is it legal to use this in commercial game?

<{POST_SNAPBACK}>

Use it for whatever you want to. :)
  • 0

#38 tsg1zzn

tsg1zzn

    GMC Member

  • New Member
  • 1163 posts
  • Version:Unknown

Posted 14 November 2005 - 03:25 PM

I'm testing something:
http://forums.gamema...howtopic=170497

By the way, this dll was used in the winning entry of the ninja-robot-pirate-something else game competition on gamedev!
  • 0

#39 Tetria

Tetria

    GMC Member

  • New Member
  • 12 posts

Posted 18 November 2005 - 10:02 PM

I have a similar problem as "terryharman" wrote here:

How would i go about making it detect that the sound has finished and start a diffrent song playing...or is this not possable?

Many thanks
Great DLL
Terry


Then as I read your next post:

First, play the sound (do not loop it). Then, in the step event of an object, you can check if it's still playing with SS_IsSoundPlaying(sound_handle).

if SS_IsSoundPlaying(sound) then begin
SS_PlaySound(othersound);
end;

I tried that and it didn't work. As the first song ends it does not play the other song, it does nothing.

This is the current script I'm using: Game Start>Script:
{
{
global.handle = SS_LoadSound("Blink - 182.ogg")
SS_PlaySound(global.handle)
SS_FreeSound(global.handle)
}
if SS_IsSoundPlaying("Blink - 182.ogg") = 0
then begin
{
global.handle = SS_LoadSound("Blink-182 ATST.ogg")
SS_PlaySound("Blink-182 ATST.ogg")
SS_FreeSound(global.handle);
}
end;
}

Could you please help me? Thank you.
  • 0

#40 tsg1zzn

tsg1zzn

    GMC Member

  • New Member
  • 1163 posts
  • Version:Unknown

Posted 19 November 2005 - 10:45 AM

Q: How do I start looping my sound at the start of the game, but when I restart the game it shouldn't start the sound again because it's already playing?
A: Put the playing and loading code in the game start event of an object and never use the function game_restart() or the corresponding action (is there one?). Instead go to the first room to restart the game. Of course, this might require some restructuring of your game, but that's good programming style anyways.

Q: How do I make a playlist-like program so that when one sound stops another one starts?
A: Here's an example, put this in the game start event and never use game_restart():
SS_Init();

ssh_firstsound = SS_LoadSound("Anime Bowling Babes.ogg");
ssh_secondsound = SS_LoadSound("Tony Christie ft Peter Kay - Amarillo.ogg");
ssh_thirdsound = SS_LoadSound("hark.ogg");

playlist[0] = ssh_firstsound;
playlist[1] = ssh_secondsound;
playlist[2] = ssh_thirdsound;
playlist_current = 0;
playlist_max = 3;
SS_PlaySound(playlist[0]);

alarm[0] = 10;
And, put this in alarm 0:
alarm[0] = 10;

if SS_IsSoundPlaying(playlist[playlist_current]) = false then begin
  playlist_current += 1;
  if playlist_current = playlist_max then begin
    playlist_current = 0;
  end;
  SS_PlaySound(playlist[playlist_current]);
end

  • 0

#41 Ricky

Ricky

    GMC Member

  • New Member
  • 21 posts

Posted 28 November 2005 - 09:14 PM

When will the pause function be implemented? i need it too much...
  • 0

#42 tsg1zzn

tsg1zzn

    GMC Member

  • New Member
  • 1163 posts
  • Version:Unknown

Posted 29 November 2005 - 08:57 AM

When will the pause function be implemented? i need it too much...

<{POST_SNAPBACK}>

Have I said that there was a "when"? Shouldn't the question be "if"?
  • 0

#43 gameduck

gameduck

    GMC Member

  • New Member
  • 166 posts

Posted 22 December 2005 - 05:04 PM

i just downloaded it, and I will give you credits of course, but why you used globals? its one object, why not using local variables, is there an reason for it?
cause if not, I will change them in local variables, those are faster...

I know this post is an bit late :D

Edited by gameduck, 22 December 2005 - 05:04 PM.

  • 0

#44 Potnop

Potnop

    GMC Member

  • GMC Member
  • 3102 posts

Posted 22 December 2005 - 06:35 PM

Can U add a thing to apply sound effects? I'm looking for a DLL that can do sound effects to an individual sound, panning to an individual sound, and voulume and all that otrher stuff so U can control an individual sound thats playing. Also that play from spot sound is gonna B useful to me.

And WTF is ogg?

Edited by Potnop, 22 December 2005 - 06:35 PM.

  • 0
Vegeta! What does the scouter say about his powerlevel?!? It's ovER 9000!!!!!
I ownt read da script, script reads me.


Link To The Super Crew Topic / Link To Colonial Commando Topic
Platform Pathfinding Example Download it here!
Editable Early Version Level Editor(Nice @$$ stuff, check it out) Download it here!

#45 tsg1zzn

tsg1zzn

    GMC Member

  • New Member
  • 1163 posts
  • Version:Unknown

Posted 22 December 2005 - 07:22 PM

i just downloaded it, and I will give you credits of course, but why you used globals? its one object, why not using local variables, is there an reason for it?
cause if not, I will change them in local variables, those are faster...

I know this post is an bit late :D

<{POST_SNAPBACK}>

They are globals so that they can be accessed from every object in every room. And local variables aren't that much faster than global variables (actually the opposite it true here):
time = current_time;
for (global.i=0; global.i<500000; global.i+=1) begin
  global.i += 1;
  global.i -= 1;
end;
show_message("Global: " + string(current_time-time));

time = current_time;
for (a=0; a<500000; a+=1) begin
  a += 1;
  a -= 1;
end;
show_message("Local: " + string(current_time-time));


Can U add a thing to apply sound effects?  I'm looking for a DLL that can do sound effects to an individual sound, panning to an individual sound, and voulume and all that otrher stuff so U can control an individual sound thats playing.  Also that play from spot sound is gonna B useful to me.

And WTF is ogg?

<{POST_SNAPBACK}>

What sound effects do you want?
This dll can do panning and volume and all that other stuff to an invididual sound that's playing.
Play from spot is unlikely since the dll is in stereo (only two speakers) mode and panning already controls that.
Ogg is a "new" file format that compresses slightly better than mp3, and also it completely free for anyone to use for anything.
  • 0

#46 Guest_Spike Studios_*

Guest_Spike Studios_*
  • Guests

Posted 22 December 2005 - 11:44 PM

Wow what a cool program. Keep up the good work.

#47 Potnop

Potnop

    GMC Member

  • GMC Member
  • 3102 posts

Posted 23 December 2005 - 11:18 AM

No, that's the old definition of panning. In GM 6, panning now means stereo. No wait, what exactly do U mean? Ure saying it's stereo and play from spot is unlikely because panning controls it?

As for sound effects, I need all the normal GM sound effects like echo and stuff. Maybe some new ones too if you can make that using the DLL. U might be able to, I don't see Y not. U just gotta program the way the sound signal is plaeyed which would probably be doable with a dll.

Edited by Potnop, 23 December 2005 - 11:19 AM.

  • 0
Vegeta! What does the scouter say about his powerlevel?!? It's ovER 9000!!!!!
I ownt read da script, script reads me.


Link To The Super Crew Topic / Link To Colonial Commando Topic
Platform Pathfinding Example Download it here!
Editable Early Version Level Editor(Nice @$$ stuff, check it out) Download it here!

#48 David_Irving

David_Irving

    GMC Member

  • New Member
  • 100 posts

Posted 24 December 2005 - 03:27 AM

Is there a list of file types this can play? I'm writing a play directory function, but im not sure as to which play.
  • 0

#49 tsg1zzn

tsg1zzn

    GMC Member

  • New Member
  • 1163 posts
  • Version:Unknown

Posted 24 December 2005 - 08:56 AM

No, that's the old definition of panning.  In GM 6, panning now means stereo. No wait, what exactly do U mean?  Ure saying it's stereo and play from spot is unlikely because panning controls it?

<{POST_SNAPBACK}>

Yes. Panning controls left and right. There is not front and back so I cannot play from a spot.


Is there a list of file types this can play? I'm writing a play directory function, but im not sure as to which play.

<{POST_SNAPBACK}>

Wav and ogg.
  • 0

#50 David_Irving

David_Irving

    GMC Member

  • New Member
  • 100 posts

Posted 24 December 2005 - 08:58 AM

No, that's the old definition of panning.  In GM 6, panning now means stereo. No wait, what exactly do U mean?  Ure saying it's stereo and play from spot is unlikely because panning controls it?

<{POST_SNAPBACK}>

Yes. Panning controls left and right. There is not front and back so I cannot play from a spot.


Is there a list of file types this can play? I'm writing a play directory function, but im not sure as to which play.

<{POST_SNAPBACK}>

Wav and ogg.

<{POST_SNAPBACK}>


Is that it? No mp3?
  • 0




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users