List Info

Thread: RE: Shockwave can be brought to a state where playing multiple sound channels at once c




RE: Shockwave can be brought to a state where playing multiple sound channels at once c
user name
2007-01-22 08:40:13
Hey Toni,

Is this something you are able to repro on all machines, or
certain
configurations?

I've seen a problem with the Shockwave sound where the game
sound would
go all odd (like a stuck cd or something with white noise)
and it would
force itself into 'Mute' and no amount of right clicking to
bring up the
menu and selecting a different volume would take it out of
mute mode.

After 10-15 seconds of having broken sound, the browser
would crash.

This isn't something isolated either - I've seen it on many
different
projects and the only solution I found .. sorry ..
workaround ... was to
reduce the number of sounds in the game; as if 8 channels
wasn't already
too little!

I take sound very seriously in my games and like to try and
create as
much of an immersive soundscape as possible but I have ran
into this bug
time and time again which just forces me to compromise in
yet another
department.

I wonder if this is the same bug?

JeffM.


-----Original Message-----
From: dirgames-l-bouncesnuttybar.drama.uga.edu
[mailto:dirgames-l-bouncesnuttybar.drama.uga.edu] On
Behalf Of Toni
Aittoniemi
Sent: Monday, January 22, 2007 9:06 AM
To: Director - Shockwave - and Flash Game Production
Subject: [dirGames-L] Shockwave can be brought to a state
where playing
multiple sound channels at once crashes the plugin.


Hello all. Here's one nut too tough to chew on myself, so I
turn to you

for help.

We have recently come across a most strange behavior in
shockwave. We do

not have much clues yet as to what actually causes it, but
the scenario 
is this :

We are developing a MMOSG which has a two "sound
toys" / games. The 
other we have been running for more than a year now with no
problems, 
the other one we only recently released. The new one is
basically a 
conversion of the old one with different samples.

When developing the feature, at first we didn't notice
anything was 
wrong because the problem wouldn't appear in director at
all. After 
going to testing with protected .cct's downloaded over http
(on the 
browser shockwave plugin) we started to notice the problem:
The browser 
plugin would crash when trying to play 4 tracks of sounds at
once. But 
to make it stranger, the old "toy" kept working!
(Later we realized that

if we put enough strain on the plugin the old one could also
be crashed,

but you had to really slam it hard with updates sounds and
to what's 
playing on stage.)

To confuse us further, we play 4 tracks simultaneously most
of the time 
with no problems. We also have an editor for the sound toy,
which uses 
the same queue/playback mechanism, working without
crashing!

Now, it seems that somehow the plugin can be put to a state
in which 
playing the sample queues is just too much for it to handle.
Here's the 
code we use for queuing :

    t_track = 1
    repeat with t_channel in m_pSoundChannels
      sound(t_channel).setPlaylist([])
      repeat with e = 1 to m_iLastSample
        t_rmem = m_mp_TrackData[t_track][e]
        if t_rmem = 0 then t_rmem = t_rEmptymem             
 
        if t_rmem <> -1 then
sound(t_channel).queue(t_rmem)      
      end repeat
      t_track = t_track + 1
    end repeat
   
And here's what we use for playing :

      repeat with t_channel in m_pSoundChannels
        if objectP(sound(t_channel)) then
sound(t_channel).play()
      end repeat

Having seen the obviously simple code, you can propably see
that there's

nothing obviously wrong with it. I'll explain what we did
find out :

We started looking for a pattern to reproduce the crash.
After a while 
we found one that we could reproduce in director as well.
Having a 
certain set of sprites active on the stage, with the 4
tracks started 
playing, we'd hit large sprite animations (which we
implement by 
manually setting the sprite members) and more sounds on the
remaining 
channels. When it crashed, we'd hit debug. Although the
debug window had

insisted that "getProp()" was not a method of a
property list, the 
debugger's memory inspector did show the contents of the
list just 
fine.. We could even write the same exact statement that
crashed it in 
the watch list and it would resolve 

Only thing we did find out is that the crash didn't seem to
occur 
immediately on playback, but later in the frame when
updating one of the

sprites in the before-mentioned animations. (Can we trust
the debugger 
on this? Is the call stack always correct?) The crash would
always be on

the same supposedly missing "getProp()" of a large
property list where 
we hold sprite numbers for quick access.

The debugger didn't help us much there, so I finally tried
the "monkeys 
banging at a typewriter"-technique on it. I removed
code line-by-line 
and rearranged it around in all imaginable configurations.
Only thing 
that prevented the crash altogether was to remove playback
of 3 
channels. Now that's not good enough 

Sound familiar? Comments? Any help would be greatly
appreciated.

-toni aittoniemi / sulake corp.




_______________________________________________
dirGames-L mailing list  -  dirGames-Lnuttybar.drama.uga.edu
http://nuttybar.drama.uga.edu/mailman/listinfo/dirgames
-l


_______________________________________________
dirGames-L mailing list  -  dirGames-Lnuttybar.drama.uga.edu
http://nuttybar.drama.uga.edu/mailman/listinfo/dirgames
-l

Re: Shockwave can be brought to a state where playing multiple sound channels at once c
user name
2007-01-22 09:26:32
Hi Jeff.

It can be readily reproduced with all machines and
configurations. Too 
bad we're all running the latest shockwave plugin, it would
have been 
interesting to see if there was any difference between
versions.

Your bug sounds very similar to ours, so I suspect there
might be 
something in common, but we haven't yet seen the "white
noise" or "mute" 
problems yet. I'm kind of hoping we won't.. As our
application gets more 
complex, the crashes on sound seem to become more frequent!
More 
patterns that cause the problem appear.

And yes, I was talking about a script error when i referred
to 
"crashing", sorry about that.

The platform is the newest shockwave browser plugin
(automatically 
updated) running on windows XP & Firefox or IE7.

-toni

Jeff Murray wrote:
> Hey Toni,
>
> Is this something you are able to repro on all
machines, or certain
> configurations?
>
> I've seen a problem with the Shockwave sound where the
game sound would
> go all odd (like a stuck cd or something with white
noise) and it would
> force itself into 'Mute' and no amount of right
clicking to bring up the
> menu and selecting a different volume would take it out
of mute mode.
>
> After 10-15 seconds of having broken sound, the browser
would crash.
>
> This isn't something isolated either - I've seen it on
many different
> projects and the only solution I found .. sorry ..
workaround ... was to
> reduce the number of sounds in the game; as if 8
channels wasn't already
> too little!
>
> I take sound very seriously in my games and like to try
and create as
> much of an immersive soundscape as possible but I have
ran into this bug
> time and time again which just forces me to compromise
in yet another
> department.
>
> I wonder if this is the same bug?
>
> JeffM.
>
>
> -----Original Message-----
> From: dirgames-l-bouncesnuttybar.drama.uga.edu
> [mailto:dirgames-l-bouncesnuttybar.drama.uga.edu] On
Behalf Of Toni
> Aittoniemi
> Sent: Monday, January 22, 2007 9:06 AM
> To: Director - Shockwave - and Flash Game Production
> Subject: [dirGames-L] Shockwave can be brought to a
state where playing
> multiple sound channels at once crashes the plugin.
>
>
> Hello all. Here's one nut too tough to chew on myself,
so I turn to you
>
> for help.
>
> We have recently come across a most strange behavior in
shockwave. We do
>
> not have much clues yet as to what actually causes it,
but the scenario 
> is this :
>
> We are developing a MMOSG which has a two "sound
toys" / games. The 
> other we have been running for more than a year now
with no problems, 
> the other one we only recently released. The new one is
basically a 
> conversion of the old one with different samples.
>
> When developing the feature, at first we didn't notice
anything was 
> wrong because the problem wouldn't appear in director
at all. After 
> going to testing with protected .cct's downloaded over
http (on the 
> browser shockwave plugin) we started to notice the
problem: The browser 
> plugin would crash when trying to play 4 tracks of
sounds at once. But 
> to make it stranger, the old "toy" kept
working! (Later we realized that
>
> if we put enough strain on the plugin the old one could
also be crashed,
>
> but you had to really slam it hard with updates sounds
and to what's 
> playing on stage.)
>
> To confuse us further, we play 4 tracks simultaneously
most of the time 
> with no problems. We also have an editor for the sound
toy, which uses 
> the same queue/playback mechanism, working without
crashing!
>
> Now, it seems that somehow the plugin can be put to a
state in which 
> playing the sample queues is just too much for it to
handle. Here's the 
> code we use for queuing :
>
>     t_track = 1
>     repeat with t_channel in m_pSoundChannels
>       sound(t_channel).setPlaylist([])
>       repeat with e = 1 to m_iLastSample
>         t_rmem = m_mp_TrackData[t_track][e]
>         if t_rmem = 0 then t_rmem = t_rEmptymem        
      
>         if t_rmem <> -1 then
sound(t_channel).queue(t_rmem)      
>       end repeat
>       t_track = t_track + 1
>     end repeat
>    
> And here's what we use for playing :
>
>       repeat with t_channel in m_pSoundChannels
>         if objectP(sound(t_channel)) then
sound(t_channel).play()
>       end repeat
>
> Having seen the obviously simple code, you can propably
see that there's
>
> nothing obviously wrong with it. I'll explain what we
did find out :
>
> We started looking for a pattern to reproduce the
crash. After a while 
> we found one that we could reproduce in director as
well. Having a 
> certain set of sprites active on the stage, with the 4
tracks started 
> playing, we'd hit large sprite animations (which we
implement by 
> manually setting the sprite members) and more sounds on
the remaining 
> channels. When it crashed, we'd hit debug. Although the
debug window had
>
> insisted that "getProp()" was not a method of
a property list, the 
> debugger's memory inspector did show the contents of
the list just 
> fine.. We could even write the same exact statement
that crashed it in 
> the watch list and it would resolve 
>
> Only thing we did find out is that the crash didn't
seem to occur 
> immediately on playback, but later in the frame when
updating one of the
>
> sprites in the before-mentioned animations. (Can we
trust the debugger 
> on this? Is the call stack always correct?) The crash
would always be on
>
> the same supposedly missing "getProp()" of a
large property list where 
> we hold sprite numbers for quick access.
>
> The debugger didn't help us much there, so I finally
tried the "monkeys 
> banging at a typewriter"-technique on it. I
removed code line-by-line 
> and rearranged it around in all imaginable
configurations. Only thing 
> that prevented the crash altogether was to remove
playback of 3 
> channels. Now that's not good enough 
>
> Sound familiar? Comments? Any help would be greatly
appreciated.
>
> -toni aittoniemi / sulake corp.
>
>
>
>
> _______________________________________________
> dirGames-L mailing list  -  dirGames-Lnuttybar.drama.uga.edu
> http://nuttybar.drama.uga.edu/mailman/listinfo/dirgames
-l
>
>
> _______________________________________________
> dirGames-L mailing list  -  dirGames-Lnuttybar.drama.uga.edu
> http://nuttybar.drama.uga.edu/mailman/listinfo/dirgames
-l
>   

_______________________________________________
dirGames-L mailing list  -  dirGames-Lnuttybar.drama.uga.edu
http://nuttybar.drama.uga.edu/mailman/listinfo/dirgames
-l

Re: Shockwave can be brought to a state where playing multiple sound channels at once c
user name
2007-01-22 12:02:16
Hi, Im experiencing a similar sound problem: Under IE7 on
WIndows XP,  
the browser crashes if you stop a sound that is preloading.
I have an  
SWA member that streams an MP3 song, and when I let it
preload the  
whole song, it works fine, but if I stop the sound, e.g. to
play  
another song, explorer crashes. In firefox it works just
fine. I have  
tried lots of things, e.g. setting sound device to MacroMix,
updating  
DirectX, streaming SWA / mp3 from different servers,
different client  
machines. I just cannot make it work. Does anyone have a
script that  
streams mp3 by creating a flash object? - Per
_______________________________________________
dirGames-L mailing list  -  dirGames-Lnuttybar.drama.uga.edu
http://nuttybar.drama.uga.edu/mailman/listinfo/dirgames
-l

[1-3]

about | contact  Other archives ( Real Estate discussion Medical topics )