Share just the right moment Share a story

  • Slides: 16
Download presentation

Share just the right moment Share a story with impact Build and share a

Share just the right moment Share a story with impact Build and share a complete story stronger than its parts.

Quickly building basic video trimming into any app. Support complex tasks such as stitching

Quickly building basic video trimming into any app. Support complex tasks such as stitching clips. Hardware smart remux for single clip edits UI support for timelines with thumbnail generation Add Background Soundtracks. Enable 3 rd parties to add Audio and Video Effects via MFTs (Media Foundation Transforms. )

Media. Composition

Media. Composition

// Assume we already loaded 2 Media. Clips, |main| and |insert|, eg. from a

// Assume we already loaded 2 Media. Clips, |main| and |insert|, eg. from a picker. Media. Clip maintwo = main. Clone(); // Trim from main everything after the seek position main. Trim. Time. From. End = main. Original. Duration - seek. Position; // Trim from maintwo everything before seek position maintwo. Trim. Time. From. Start = seek. Position; // Create composition to stitch clips. Media. Composition stitched = new Media. Composition(); stitched. Clips. Add(main); stitched. Clips. Add(insert); stitched. Clips. Add(maintwo); // Preview the result using Media. Element. My. Media. Element. Set. Source(stitched. Generate. Preview. Media. Stream. Source(640, 480));

// Assume we already loaded Media. Clip |clip|. clip. Video. Effects. Add(new Video. Effect.

// Assume we already loaded Media. Clip |clip|. clip. Video. Effects. Add(new Video. Effect. Definition("My. Effects. My. Gray. Scale")); // Add the clip with effect to composition Media. Composition composition = new Media. Composition(); composition. Clips. Add(clip);