|
|
I'm not real happy with the DOS tga to avi and tga to mpeg utilities I've
found so far, and I'm designing a Windows based script-driven movie editor
to do the job right (I hope). What I have in mind is a scripted conversion
process. Here's a sample script showing some of the proposed capabilites.
Does anyone have suggestions for features and capabilities they'd like to
see in such a program. (BTW: I'm a programmer with 35+years experience, so
I think I can pull it off <grin>)
//---------------------------------------------------
// SAMPLE ANIM8 script
//Global file info
filename( sample.avi )
codec( CinePak )
color_depth ( 24 )
frame_rate ( 15 ) // 15 frames per second
// Fade in to image 1 for 8 frames, then run scene 1 with images
// image01.tga through image24.tga
fade_to { image01.tga frames(8) }
scene { image01.tga .. image24.tga } // scene has 24 frames
// now fade from scene 1 to scene 2 with 8 frames of disolve overlap
fade_to { next_scene frames(8) }
scene { scene2_01 .. scene2_72 // scene has 72 frames
overlay { title1.bmp matte( title1Mat.bmp) // with optional
alpha-channel bitmap
fade_in ( 10 18 ) // fade in title1.tga over this
// scene starting with frame 10
// and ending fade_in at frame
18
fade_out ( 35 43 ) // fade out title starting at
// frame 35. Gone by frame 43
}
overlay { title2.gif
fade_in ( 39 47 ) // title two fades in as title
// one fades out (disolve)
// at this point there are three bitmaps mixed in each frame.
// The animation sequence, ( scene2_??.tga), title1 (fading out)
// and title2 ( fading in )
fade_out ( 64 72 ) // title two fades out frame 64
to 72
}
}
fade_to { Black frames(8) } // and whole scene fades to black
// along with title2
// now fade in scene 3 (8 frames of fade in)
fade_to { scene3_05.tga .. scene3_60.tga frames(8) ) // start the next
scene
// wipe, left to right. scene 4 replaces scene 3 with a horizontal wipe
// lasting 10 frames
wipe_to { next_scene direction( horizontal left_right ) frames( 10 ) }
scene { scene4_01.tga .. scene4_48.tga
over_crank(0.75)
}
// scene 4 is played in slow motion (over_crank(0.75)) at 3/4 speed.
scene { ending1.tga frames(3) // show this image for 3 frames
ending2.tga frames(2) // and this one for 2 frames
endgin3.tga .. ending9.tga // then run regular speed
}
fade_to { Black frames(10) }
// and so on...
The script would be parsed into an internal frame by frame description of
which images would appear in each frame (including fade in/fade out levels
for each image in each frame) and then the whole avi (or mpeg) would be
constructed frame by frame based on that editing info.
Any suggestions and ideas would be very welcome.
(P.S. The completed project will be Freeware, and I'll probably make the
C++ source code available too.)
Gary Shannon
< reb### [at] riocom >
< gar### [at] sierracom >
Post a reply to this message
|
|