MS PowerPoint 允許將媒體元素添加到演示文稿中,例如音頻和視頻。視頻幀用於插入來自本地文件或網絡資源的視頻剪輯。在本文中,您將學習如何使用 Python 在 PowerPoint PPT 或 PPTX 中添加視頻幀。我們還將演示如何從 YouTube 等網絡資源中嵌入視頻,以及如何從 PPT 中提取視頻。
在PowerPoint PPT中添加視頻幀的Python庫
要在 PowerPoint PPT/PPTX 中添加視頻幀,我們將使用 Aspose.Slides for Python via .NET。該庫提供了一個完整的包來創建和操作 PowerPoint 演示文稿。您可以使用以下 pip 命令從 PyPI 安裝它。
> pip install aspose.slides
在 Python 中將視頻幀添加到 PowerPoint PPT
您可以從本地存儲或網絡資源(例如 YouTube)添加視頻。以下部分借助代碼示例演示了這兩種情況。
從本地文件插入視頻
以下是在 Python 中將視頻幀添加到 PowerPoint PPT 的步驟。
- 首先,加載 PPT/PPTX 文件或使用 Presentation 類創建一個新文件。
- 然後,獲取所需幻燈片的參考。
- 使用 Presentation.videos.addvideo() 方法將視頻添加到視頻集合中並獲取其引用。
- 使用 Slide.shapes.addvideoframe() 方法將視頻幀添加到幻燈片並獲取其引用。
- 設置視頻的播放模式和音量。
- 最後,使用 Presentation.save(string, SaveFormat) 方法保存演示文稿。
以下代碼示例展示瞭如何使用 Python 在 PowerPoint PPT 中嵌入視頻。
import aspose.slides as slides
# 負載演示
with slides.Presentation("presentation.pptx") as presentation:
# 選擇幻燈片
slide = presentation.slides[0]
# 加載視頻文件
with open("Wildlife.mp4", "rb") as in_file:
# 將視頻添加到演示文稿
vid = presentation.videos.add_video(in_file)
# 添加視頻幀
vf = slide.shapes.add_video_frame(50, 150, 300, 350, vid)
# 將視頻設置為視頻幀
vf.embedded_video = vid
# 設置視頻的播放模式和音量
vf.play_mode = slides.VideoPlayModePreset.AUTO
vf.volume = slides.AudioVolumeMode.LOUD
# 保存演示文稿
presentation.save("add-video-frame.pptx", slides.export.SaveFormat.PPTX)
從 Web 源將視頻嵌入到 PowerPoint PPT 中
您還可以從 Web 源在 PowerPoint PPT 中添加視頻。為了演示,讓我們用 Python 將 YouTube 視頻嵌入到 PowerPoint PPT 中。
- 首先,加載 PPT/PPTX 文件或使用 Presentation 類創建一個新文件。
- 然後,獲取所需幻燈片的參考。
- 使用 Slide.shapes.addvideoframe() 方法從 URL 添加 YouTube 視頻並獲取其參考。
- 設置視頻縮略圖。
- 最後,使用 Presentation.save(string, SaveFormat) 方法保存演示文稿。
以下代碼示例展示瞭如何使用 Python 將 YouTube 視頻嵌入到 PowerPoint PPT 中。
import aspose.slides as slides
from urllib.request import urlopen
# 負載演示
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
# 加載縮略圖
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())
# 保存演示文稿
presentation.save("add-video-frame-from-web.pptx", slides.export.SaveFormat.PPTX)
用 Python 從 PowerPoint 演示文稿中提取視頻
當您想要提取添加到 PowerPoint 演示文稿的視頻時,可能會出現這種情況。以下是實現此目的的步驟。
- 首先,使用 Presentation 類加載 PPT/PPTX 文件。
- 然後,循環瀏覽 Presentation.slides 集合中的幻燈片。
- 對於每張幻燈片,循環遍歷其具有的形狀集合。
- 如果 shape 是 VideoFrame,則提取並保存嵌入的視頻。
以下代碼示例展示瞭如何使用 Python 從 PowerPoint PPT 中提取視頻。
import aspose.slides as slides
# 負載演示
with slides.Presentation("presentation.pptx") as presentation:
# 循環播放幻燈片
for slide in presentation.slides:
# 遍歷形狀
for shape in slide.shapes:
# 檢查形狀的類型
if type(shape) is slides.VideoFrame:
# 獲取內容類型
content_type = shape.embedded_video.content_type
# 獲取視頻數據
buffer = shape.embedded_video.binary_data
# 保存視頻
with open("extracted-video." + content_type[content_type.rfind('/') + 1:len(content_type)], "wb") as stream:
stream.write(buffer)
獲得免費許可證
您可以通過.NET 使用 Aspose.Slides for Python,沒有評估限制,只需獲得臨時許可。
結論
在本文中,您學習瞭如何使用 Python 將視頻幀添加到 PowerPoint PPT/PPTX。我們已經介紹瞭如何從文件或 YouTube 等網絡資源中嵌入視頻。此外,您還了解瞭如何以編程方式從演示文稿中提取視頻。此外,您可以訪問 文檔 來探索更多關於 Aspose.Slides for Python 的信息。此外,您可以將您的問題發佈到我們的論壇。
也可以看看
- 在 Python 中創建 PowerPoint 文件
- 在 Python 中將 PPTX 轉換為 PDF
- 在 Python 中將 PPT 轉換為 PNG
- 在 Python 中將 PPT/PPTX 轉換為 HTML
- 用Python在PowerPoint PPT中添加水印
信息:您可能想查看 Aspose 免費 PowerPoint 到視頻 轉換器,因為此服務允許您將演示文稿轉換為令人驚嘆且引人入勝的視頻。