Note, this topic boarderlines Programming, but is probably not its proper
place, so I'm putting it here unless otherwise directed elsewheres.

---------- ===== ---------- ===== ---------- ===== ---------- ===== ----------

I'm working on a Filter project (several, to be exact) where I take some
video frames, and export them out to .bmp files, using virtualDUB for this,
and then process them trough a filter I have setup inside a tool.

The other slightly more quicker approach would be the method of highlighting
a section of video that I want to export out as .bmp's and then from there,
process the images. This, I can do inside virtuDUB.. and is the method of
my .bmp's.

The problem is not what you think. I don't want to process the images
with virtualDUB or AVIsynth filters. I want to process each image with
MY FILTER inside a delphi tool I have been developing. One of the tools
is for color alterations. It's a fairly quick filter, so I'm using that
one as the first trial n error attempt at stream-line the process.

My current process is like this:

** Open video file inside vdub
** highlight a frame (or section of frames) and export out to .bmp files
** open each .bmp frame inside delphi filter tool, and process, export as
** raw YV12 or BMP image file.
.
Here's the part that I need to conjure up a better method of processing
my *home-brewed-filtered* images
.
** After each image(s) has been processed, I need to re-frameserve each image
(or multiple images - numberical order) into my MPEG encoder of choice.

Right now, in order to make a complete AVI file, I make a bunch of .avi
files from each .bmp that is processed through my delphi filter, and
open the raw YV12 image (for instance) through avisynth's rawsource()
filter.

I've used the rawsource() function to read in an raw YV12 image and re instroduce
it as a video. But this only works for *single* images, and can be very time
consuming to process many frames/images. Not very good if you have a whole video
to process, right

fwiw, here is the script I use for this current and drooling process, assuming
that the image is raw YV12:

Code:
 xx    = "I420"
 fname = "..\i420.01.yuv"

 loadplugin("..\rawsource.dll")
 RawSource( fname, 720,480, xx )
 AssumeFPS(29.97)
Then, open inside vdub, and re-save as new .AVI file for each image.
They would look like this.

test.01.avi
test.02.avi
test.03.avi
.
.
test.28.avi
test.29.avi
test.30.avi

Then, when I'm ready to create a whole (test) video to process normally, I would
open vdub, and load in the first test.01.avi file, and setup vdub to open the
remaining sequence of .avi files.

Then, I would proceed to frameserve this video to TMPGenc for a final MPEG.

Right now, I'm doing it the very very long way.. as indicated above. But
this approach is a testing phase for me to process images in a tool I'm
working on, and then further process them through normal means. But running
such tests is definately waring me out.

Now you see why I'm looking to automate this process.

I *would* like to continue using vdub as my frameserver, but I can also use
AVIsynth if better.

I'm looking to do the following:

avi -> vdub[exp_as_bmp] -> delphi_tool[exp_as_YV12] -> vdub/avisynth -> TMPGenc
avi -> vdub[exp_as_bmp] -> delphi_tool[exp_as_BMP] -> vdub/avisynth -> TMPGenc

Are there any easier solutions to this slow and drooling madness of mine ??
I would appreciate a better solution, if there is one.

Thanks,
-vhelp 3858