PapaJohn
Thu Jan 15 00:54:48 CST 2004
Hi Ken,
Thanks for another informative post about custom transitions. I've updated
the web page and point people to the post for the code specifics.
My guess is that WMM would fit the source video to the destination size
before sending it to the transition engine, as the two clips involved in a
transition might be different resolutions and even different from the
selected output resolution. But it's only a guess.
--
PapaJohn
www.papajohn.org
"Ken" <kencox3812green@REMOVE_812GREEN.juno.com> wrote in message
news:uDarMdw2DHA.2604@TK2MSFTNGP09.phx.gbl...
> Stuart,
>
> A simple split screen can be accomplished with the Picture in Picture
> transition included in the DirectX programming. The transition is already
> there, you only need to point WMM in the right direction and supply the
> parameters for the transition. If you want to read up a little on custom
> transitions and effects look at
>
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwmt/html/MovieMakerSFX.asp.
> For information specific to this transition, look at
>
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/directx9_c/directx/htm/compositortransition.asp.
>
> This transition places video cropped per your specifications inside a
window
> on top of another video clip. The window size and location is also up to
> you. If the second clip (the one inside the window) is not cropped to the
> same size or aspect ratio as the window in which it is placed, the video
> will be zoomed or stretched to fit. For a split screen application, this
> means that one of the clips could be squashed to fit. If you want both
sides
> of the split screen distorted to fit, you would have to run it once to
> create a clip with video in a window on one side, the re-import the clip
to
> be used as source and place a second window on the other side.
>
> One final note before the step by step instructions. Unfortunately, the
> locations for cropping and the window must be defined as pixel coordinates
> rather than percentage of the video. This results in several
complications.
> First, I have only worked with full size DV-AVI (720x480) files for all
> source files and also for the destination file. I do not know if WMM fits
> the source video to the destination size before sending it to the
transition
> engine or after (perhaps PapaJohn can help us out with this), so if you
are
> working with different resolutions, you will have to experiment to see
what
> works. Second, WMM previews in a reduced 360x240 mode, so for my tests,
the
> dimensions entered appeared to be twice as large as I was expecting in
> preview mode. The rendered video file was fine. I have since learned to
> define 2 transitions, one with all the values divided by half which I can
> use to preview and see if the window is in the right spot, etc. I then
have
> to remember to apply the rendering transition before the file is created.
>
> This is getting rather lengthy, sorry 'bout that. On to the nitty gritty:
>
> 1. Copy the following text and save it as a text file in the
> "c:\ProgramFiles\Movie Maker\1033\AddOnTFX\" folder with a .xml extension.
> The actual directory may be different depending on your language (1033 is
> for English) and installation. You may also have to create the folder
> AddOnTFX.
> =========.xml file======
> <TransitionsAndEffects Version="1.0" >
> <Transitions>
> <TransitionDLL guid="{BB44391D-6ABD-422f-9E2E-385C9DFF51FC}">
> <Transition name="PIP Preview" iconid="88">
> <Param name="SrcOffsetX" value="0" />
> <Param name="SrcOffsetY" value="0" />
> <Param name="SrcWidth" value="360" />
> <Param name="SrcHeight" value="240" />
> <Param name="OffsetX" value="180" />
> <Param name="OffsetY" value="120" />
> <Param name="Width" value="180" />
> <Param name="Height" value="120" />
> </Transition>
> <Transition name="PIP Render" iconid="88">
> <Param name="SrcOffsetX" value="0" />
> <Param name="SrcOffsetY" value="0" />
> <Param name="SrcWidth" value="720" />
> <Param name="SrcHeight" value="480" />
> <Param name="OffsetX" value="360" />
> <Param name="OffsetY" value="240" />
> <Param name="Width" value="360" />
> <Param name="Height" value="240" />
> </Transition>
> </TransitionDLL>
> </Transitions>
> </TransitionsAndEffects>
> ==================================
> The parameters I have given are for a screen split in the center with the
> second clip squashed into the right half of the screen (DV-AVI
resolution).
> The right half of the first clip will not be seen. The parameters are
> defined as follows:
> SrcOffsetX distance from the left edge of the second clip to place in
the
> PIP window
> SrcOffsetY distance from the top edge of the second clip to place in
the
> PIP window
> SrcWidth width of the portion of the second clip to place in the PIP
> window
> SrcHeight height of the portion of the second clip to place in the PIP
> window
> OffsetX distance from the left edge of the first clip to place the PIP
> window
> OffsetY distance from the top edge of the first clip to place the PIP
> window
> Width width of the PIP window
> Height height of the PIP window
> The parameters beginning with Src define how to crop the second clip. You
> will probably have to play around with the values to get it to work how
you
> want it too. Make sure to resave the .xml file after you make changes.
>
> 2. Restart WMM. Custom Transitions are loaded at run time, so you must
> restart WMM before the transition will be visible. This also applies to
any
> changes/tweaks you make to the parameter values later on, you must close
and
> then restart WMM.
>
> 3. Place the background clip on the timeline. If you are going to run this
> twice to put a window on the left and the right, the background clip will
be
> covered up and so just a still should work fine.
>
> 4. Place the video you want to be in the window on the timeline after the
> first clip.
>
> 5. Grab the newly created "PIP Preview" transition from the Transition
> collection and drop it over the second clip.
>
> 6. Preview and make any changes.
>
> 7. Render and check to see that it all worked out OK.
>
> 8. If you want, re-import the new video to use as source and place another
> window on the other side.
>
> Hope this helps, let me know how it works out.
>
> Ken
>
>