swftools-common
[Top][All Lists]
Advanced

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

[Swftools-common] help converting this script


From: Pablo Rodríguez
Subject: [Swftools-common] help converting this script
Date: Mon, 16 Jul 2007 22:18:51 +0200
User-agent: Thunderbird 1.5.0.10 (X11/20070305)

Hi there,

I use the script provided by SuperShow
(http://www.rastersoft.com/programas/supershow.html) to generate
presentations with synced audio (example provided bellow).

I'm not a Flash expert, but AFAIK the resulting file uses AS2, which
requires newer versions of the Adobe plugin and free players
(Gnash/swfdec) might not support it.

I would like that the output file uses AS1 exclusively, using the same
commands as http://randomfoo.net/oscon/2002/lessig/free_culture.swf,
which has been generated using Macromedia Flash.

I wonder whether this would be possible using swftools. I guess the
script should be translated into a simpler form (as in the script in
http://lists.gnu.org/archive/html/swftools-common/2004-05/msg00022.html).
But the issue with that script slide duration is defined in frames and
frames per second instead of seconds. The Adobe plugin cannot reproduce
both slides an synced audio accurately when expressing duration in frames.

Wouldn't it be possible to express slide duration directly in
milliseconds? Or would it be a way to simplify the script bellow?

Thanks for your help,


Pablo


# Presentation script, generated by SuperShow
.flash filename="/home/ousia/supershow-1.0.1/file.swf" version=5 fps=20
.swf slides "/home/ousia/supershow-1.0.1/file.tmp/presentacion.swf"
.put slides
.stop slides
.sound audio "/home/ousia/supershow-1.0.1/file.tmp/output.wav"
.action:
        snd=new Sound();
        snd.attachSound("audio");
.end
.frame 1
        .action:
                snd.start(0,0);
        .end
.frame 3
        .action:
                if (snd.position>11879) {
                        slides.nextframe();
                        gotoandPlay(4);
                } else {
                        gotoandPlay(2);
                }
        .end
.frame 5
        .action:
                if (snd.position>14693) {
                        slides.nextframe();
                        gotoandPlay(6);
                } else {
                        gotoandPlay(4);
                }
        .end

[...]

.frame 113
        .action:
                if (snd.position>178308) {
                        slides.nextframe();
                        gotoandPlay(114);
                } else {
                        gotoandPlay(112);
                }
        .end
.frame 115
        .action:
                if (snd.position>181420) {
                        slides.nextframe();
                        gotoandPlay(116);
                } else {
                        gotoandPlay(114);
                }
        .end
.frame 137
        .action:
                snd.stop();
        .end
.frame 157
        .action:
                gotoandPlay(155);
        .end
.end





reply via email to

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