gnash-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gnash-dev] www.weebls-stuff.com, MP3 problem


From: Martin Sidaway
Subject: Re: [Gnash-dev] www.weebls-stuff.com, MP3 problem
Date: Wed, 12 Nov 2008 01:11:24 +0000

On Mon, Nov 10, 2008 at 8:17 AM, strk <address@hidden> wrote:
On Mon, Nov 10, 2008 at 04:54:49AM +0000, Martin Sidaway wrote:

> I'm trying to get into open source development at the moment and so I'd like
> to get involved in working on gnash.

Welcome !!

> I have looked in particular at the movies
> /flash/pie.swf, /flash/donkey.swf, /flash/angry.swf, and /flash/hairy.swf.
> They all have a looping sound that is set to loop a large number of times
> (say, 50) in the StartSound tag. The movie doesn't actually last for that
> number of loops, so presumably it is just a lazy way of saying "until end of
> movie". In Adobe flash, this is certainly how it is interpreted. However,
> gnash seems to keep the old copy of the looping sound playing when the movie
> restarts.

Restarts by gotoFrame or by manual restart request ?

I just meant when it restarts automatically at the end of the movie (neither gotoFrame tag nor manual restart)
 


> An odd feature of this is that when it restarts the movie, it
> first momentarily pauses the old instance (of the MP3), then restarts it
> again when the new MP3 instance starts.

I've been refactoring the sound handler so might have missed something
in there. If you file a bug containing the bug description and an url
to the SWF file (with md5 sum possibly, to make sure it's the same
you've been debugging) it'll help.

To clarify: I didn't mean that the momentary pause was a problem, just that it was odd that it paused sound completely at first, then brought the old sound back in. As if it was bringing the old sound back in "by accident" along with the new one. However, I now think the momentary pause probably is a separate bug - see below.



> I created my own looping-MP3 swfs using Ming, to see if I got the same
> behaviour, and strangely, my SWFs have the probem in both gnash *and* in the
> adobe player (i.e. where the old copy overlaps with the new copy). It is
> difficult to see how the adobe player manages to "differentiate" between the
> two sets of swf files.

The StartSound tag has a 'no-sync-multiple' flag. When on, the tag doens't
start a new sound if an old (of same definition) is already playing.
I don't think Gnash implements that, but should not be hard to fix currently.

That's funny, because the file I'm having the contradictory behaviour with (pie.swf) has noMultiple="0" on all of the StartSound tags (the same as my generated files).
 


> The other problem is that sound decoding doesn't keep up with output. This
> shows up with "gtk-gnash -v -v pie.swf":
>
> DEBUG: do_mixing: less samples fetched (1488) then I requested (1880).
> Filling the rest with silence

This commonly happens at the end of the sound. The only way for it
to NOT happen would be for number of samples in each sound to be
a multiple of 1880, which is hardly a requirement...
It's all normal to me, just the SDL thread fetches 1880 samples each
iteration.


Okay, I realise now that this is not the problem. I think I was just a bit confused about how do_mixing was actually being used.

However, I do still have the problem of periods of silence in the output. These pauses seem to occur wherever there is a StartSound tag.

--
Martin Sidaway

reply via email to

[Prev in Thread] Current Thread [Next in Thread]