Встроить видеокадр в PowerPoint с помощью Python

MS PowerPoint позволяет добавлять в презентации мультимедийные элементы, такие как аудио и видео. Видеокадры используются для вставки видеоклипов из локальных файлов или веб-источников. В этой статье вы узнаете, как добавлять видеокадры в PowerPoint PPT или PPTX на Python. Мы также продемонстрируем, как вставлять видео из веб-источника, такого как YouTube, и извлекать видео из PPT.

Библиотека Python для добавления видеокадра в PowerPoint PPT

Чтобы добавить видеокадры в PowerPoint PPT/PPTX, мы будем использовать Aspose.Slides для Python через .NET. Библиотека предоставляет полный пакет для создания презентаций PowerPoint и управления ими. Вы можете установить его из PyPI с помощью следующей команды pip.

> pip install aspose.slides

Добавить видеокадр в PowerPoint PPT на Python

Вы можете добавить видео либо из локального хранилища, либо из веб-источника, например YouTube. В следующих разделах демонстрируются оба сценария с помощью примеров кода.

Вставить видео из локального файла

Ниже приведены шаги по добавлению видеокадра в PowerPoint PPT на Python.

  • Сначала загрузите файл PPT/PPTX или создайте новый с помощью класса Presentation.
  • Затем получите ссылку на нужный слайд.
  • Добавьте видео в коллекцию видео с помощью метода Presentation.videos.addvideo() и получите ссылку на него.
  • Добавьте видеокадр на слайд с помощью метода Slide.shapes.addvideoframe() и получите ссылку на него.
  • Установите режим воспроизведения и громкость видео.
  • Наконец, сохраните презентацию с помощью метода Presentation.save(string, SaveFormat).

В следующем примере кода показано, как встроить видео в PowerPoint PPT на Python.

import aspose.slides as slides

# load presentation
with slides.Presentation("presentation.pptx") as presentation:
    # select slide
    slide = presentation.slides[0]

    # load video file
    with open("Wildlife.mp4", "rb") as in_file:
        # add video to presentation
        vid = presentation.videos.add_video(in_file)

        # add video frame
        vf = slide.shapes.add_video_frame(50, 150, 300, 350, vid)

        # set video to video frame
        vf.embedded_video = vid

        # set play mode and volume of the video
        vf.play_mode = slides.VideoPlayModePreset.AUTO
        vf.volume = slides.AudioVolumeMode.LOUD

    # save presentation
    presentation.save("add-video-frame.pptx", slides.export.SaveFormat.PPTX)

Вставка видео в PowerPoint PPT из веб-источника

Вы также можете добавить видео в PowerPoint PPT из веб-источника. Для демонстрации давайте встроим видео с YouTube в PowerPoint PPT на Python.

  • Сначала загрузите файл PPT/PPTX или создайте новый с помощью класса Presentation.
  • Затем получите ссылку на нужный слайд.
  • Добавьте видео YouTube из URL-адреса, используя метод Slide.shapes.addvideoframe(), и получите его ссылку.
  • Установите миниатюру видео.
  • Наконец, сохраните презентацию с помощью метода Presentation.save(string, SaveFormat).

В следующем примере кода показано, как встроить видео YouTube в PowerPoint PPT на Python.

import aspose.slides as slides
from urllib.request import urlopen

# load presentation
with slides.Presentation("presentation.pptx") as presentation:
    #add video frame
    videoFrame = presentation.slides[0].shapes.add_video_frame(10, 10, 427, 240, "https://www.youtube.com/embed/s5JbfQZ5Cc0")
    videoFrame.play_mode = slides.VideoPlayModePreset.AUTO

    # load thumbnail
    thumbnail_uri = "http://img.youtube.com/vi/s5JbfQZ5Cc0/hqdefault.jpg"
    f = urlopen(thumbnail_uri)
    videoFrame.picture_format.picture.image = presentation.images.add_image(f.read())

    # save presentation
    presentation.save("add-video-frame-from-web.pptx", slides.export.SaveFormat.PPTX)

Извлечение видео из презентации PowerPoint в Python

Может быть случай, когда вы хотите извлечь видео, добавленные в презентацию PowerPoint. Ниже приведены шаги для достижения этого.

  • Сначала загрузите файл PPT/PPTX, используя класс Presentation.
  • Затем просмотрите слайды в коллекции Presentation.slides.
  • Для каждого слайда прокрутите коллекцию фигур, которые у него есть.
  • Если фигура представляет собой видеокадр, извлеките и сохраните встроенное видео.

В следующем примере кода показано, как извлечь видео из PowerPoint PPT в Python.

import aspose.slides as slides

# load presentation
with slides.Presentation("presentation.pptx") as presentation:

    # loop through slides
    for slide in presentation.slides:

        # loop through shapes
        for shape in slide.shapes:

            # check type of the shape
            if type(shape) is slides.VideoFrame:

                # get content type
                content_type = shape.embedded_video.content_type

                # get video data
                buffer = shape.embedded_video.binary_data

                # save video
                with open("extracted-video." + content_type[content_type.rfind('/') + 1:len(content_type)], "wb") as stream:
                    stream.write(buffer)

Получить бесплатную лицензию

Вы можете использовать Aspose.Slides for Python через .NET без ограничений по оценке, получив временную лицензию.

Вывод

В этой статье вы узнали, как добавлять видеокадры в PowerPoint PPT/PPTX на Python. Мы рассмотрели, как встроить видео из файла или веб-источника, такого как YouTube. Более того, вы видели, как программно извлекать видео из презентации. Кроме того, вы можете посетить документацию, чтобы узнать больше об Aspose.Slides для Python. Кроме того, вы можете оставлять свои вопросы на нашем форуме.

Смотрите также

Информация: вы можете попробовать БЕСПЛАТНЫЙ конвертер Aspose PowerPoint to Video, потому что этот сервис позволяет преобразовывать презентации в потрясающие и привлекательные видео.