How can I add an existing video in a slide (PPT) using MATLAB?

10 views (last 30 days)
I need to create reports in PowerPoint (PPT) using Matlab.
I have a video in AVI format and I would like to add it in the report (PPT) created.
I can see that it is possible to add pictures with limited formats, such as .bmp .emf .eps .gif .jpeg .jpg .png .tif.
However, I cant find anything about to add video format, such as mp4, avi, wmv etc.
Is it possible to do this using Matlab? Could you help me with any solution?
Tks.

Answers (1)

Rahul Singhal
Rahul Singhal on 19 May 2021
Hi Fabio,
Currently, the PPT API doesn't support programmatically adding a video file to a slide.
This is something the development team is aware of and is considering to support in an upcoming release.
-Rahul
  3 Comments
Fabio Ambrosio
Fabio Ambrosio on 16 Nov 2021
Edited: Fabio Ambrosio on 16 Nov 2021
Yes. You need to use the actxserver() and AddMediaObject2 method in your MATLAB code.
Below is an example to add a video in AVI format on the second page of the slide:
% Create an ActiveX object
ppt = actxserver('powerpoint.application');
% Open a specific presentation
ppt.Presentations.Open('C:\Users\PATH\test\my_presentation.pptx');
% Select a slide layout
layout = ppt.ActivePresentation.SlideMaster.CustomLayouts.Item(6);
% Add a new slide on page 2 with selected layout
page = 2;
ppt.ActivePresentation.Slides.AddSlide(page, layout);
% Select a slide page
slides = ppt.ActivePresentation.Slides;
slidePage = slides.Item(page);
slidePage.Select;
videoPath = 'C:\Users\PATH\my_video.avi';
% Add video with AVI format in a specific position
video = ppt.ActiveWindow.Selection.SlideRange(1).Shapes.AddMediaObject2(videoPath, 0, -1, 160, 75,500,210);
%save presentation
ppt.ActivePresentation.Save;
I hope this help you.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by