OK, Joao, Thomas, I could not resist... disclaimer... this is my first attempt to use callbacks in a player and I don't have a clue what I'm doing except to follow the docs as best one can...

I loaded a small test stack with 11 images and set a background group consisting of syncMusic fld, player (set to a .mp3 music file ref) and button, way off to the right which will be out of the window rect in the end and did as you said and started the music and clicked the 'record" button to go next card, recording the interval each time:

I got this in the fld:

21525
30222
36995
44598
52557
63045
72544
80195
88907
91849
96601

Not knowing how to implement your "poll the player's current time on a loop" suggestion --

(all my QT audio manager stacks poll on a second interval, so it's impossble to record exactly at a given second and polling with a send on 1/600 of a second (the timeScale for this player) seems CPU excessive, I may be missing something there as well, so...)

I tried to implement a callbacks model... and set the callbacks of the player like this:

on mouseUp
  put fld "syncMusic" into tIntervals
  repeat for each line x in tintervals
    put x &",goNext" & cr after tTransitionPoints
  end repeat
  delete line -1 of tTransitionPoints
  set the callbacks of player "music" to tTransitionPoints
end mouseUp

OK, now the player has this callbacks property:

21525,goNext
30222,goNext
36995,goNext
44598,goNext
52557,goNext
63045,goNext
72544,goNext
80195,goNext
88907,goNext
91849,goNext


and in  the player script I have.

on goNext
  go next card
end goNext

it doesn't work. I start the player and the "go next card" is not implemented when the intervals are reached... what am I missing?

Sivakatirswami

On Apr 14, 2006, at 9:15 AM, Thomas McGrath III wrote:

Joao,

This is actually not that difficult.
1.) Are you using a player?
2.) If so, is this one and only one soundtrack?

If so then in 'record' mode what you need to do is have a background object with a "Sync" field and a "Capture" button in it aside from your next and prev buttons.
Then in the script of the the capture button you can:

on mouseUp
put the currentTime of player "MySoundTrack"  & cr after field "Sync"
go next card
end mouseUp

Then play your soundtrack and hit the button when you want to capture the time and go to the next card.

Then in playback mode you can store the field "Sync" in a custom property of the stack and hide the background group for the SYNC field and Capture button.

So to put the field in the custom prop in the message box type:

put field "Sync" into the slideSync of stack "MyStackNameHere"

Then in the playyback script you will poll the current time of the player in a loop and go next page when the
current time reaches the recorded times in your custom prop.

on currentTimeChanged theInterval
if theInterval is in the slideSync of stack "MyStackNameHere" then
go next card
end if
end currentTimeChanged

You will have to deal with your auto start scripts and with the end of playing etc. but this should get you started.
HTHs

Tom



On Apr 14, 2006, at 1:30 PM, Joao Candido Portinari wrote:

Revolution friends and gurus,

I would appreciate very much any help you could kindly provide on the
following:

I am trying to build a slideshow using Revolution. It consists of some 200 images of paintings accompanied by a music soundtrack, lasting about 20
minutes (automatic play with dissolve transitions).

The problem is the need for a practical way of creating an accurate
synchronization between the images and the music soundtrack (meaning that
each image must be shown at a specific time in the soundtrack).

This sync creation process should be natural and easy enough, something like:

1. go to “authoring mode”;
2. play the slideshow and click “go next card” when a specific musical event
is reached;
3. repeat this process consecutively as the images go by, and commands for
“go next card” should be inserted automatically in the script.

Do you know of any already existent stack that builds slideshows in this
way? If not, how do I write a script for this?

Thank you very much for your help.

Regards,

Joao
_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Thomas J McGrath III
[EMAIL PROTECTED]

Lazy River Software™ - http://www.lazyriversoftware.com

Lazy River Metal Art™ - http://www.lazyriversoftware.com/metal.html

Meeting Wear™ - http://www.cafepress.com/meetingwear

Semantic Compaction Systems - http://www.minspeak.com

SCIconics, LLC - http://www.sciconics.com/sciindex.html







_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to