人們經常出於多種原因尋求將 PPT 轉換為視頻。通過將 PowerPoint 轉換為視頻,他們獲得了一個非常易於共享和打開的媒體文件(例如 mp4)。除了增加分享機會之外,最終的視頻格式還允許他們以對觀眾更有吸引力的方式使用演示內容。
在線將 PowerPoint PPT 轉換為視頻
雖然 PowerPoint 應用程序配備了允許用戶將幻燈片轉換為視頻的功能,但視頻創建過程卻並不簡單。您可能會從使用簡單的在線工具(例如 Aspose 的 PowerPoint 轉視頻 Web 應用程序)中獲益更多。當您讀完本文時,您將了解如何使用在線轉換器以及運行 C#、Java 和 C++ 代碼將 PowerPoint PPT 轉換為視頻。
在線 PPT 到 MP4 轉換器
- 轉到 Aspose Online PPT 到 MP4 轉換器 頁面。
- 單擊刪除或上傳您的文件。
- 上傳要轉換為 MP4 視頻的 PowerPoint 演示文稿。
- 單擊“轉換”。
在線 PPT 到 MP4 轉換器提供的參數允許您:
- 指定您要在視頻中使用演示文稿中的哪些幻燈片,
- 添加引人入勝的過渡,
- 指定您希望每張幻燈片在視頻中出現的時長,
- 向視頻添加聲音或音樂,以及
- 選擇您喜歡的視頻質量。
PowerPoint PPT 轉 MP4 - 常見問題解答
如何在線將 PPT 轉換為 MP4 視頻?
使用我們的在線 PowerPoint 到 MP4 視頻轉換器將 PPT 演示文稿轉換為視頻文件。上傳您的演示文稿,指定您的首選參數或選項,然後單擊“轉換”。
生成的視頻是什麼格式?
MP4 是生成的視頻的格式。
將 PowerPoint 轉換為視頻需要多長時間?
通常需要幾分鐘。 PowerPoint 到視頻轉換所需的時間取決於所涉及的幻燈片數量、所選的過渡、所選的視頻質量以及影響操作的其他參數。
我可以在智能手機上將 PowerPoint PPT 轉換為視頻嗎?
是的。您可以在手機上使用 Aspose PowerPoint to Video Web 應用程序。該轉換器在移動設備上的工作方式與在計算機上的工作方式相同。
使用代碼將 PPT 轉換為視頻
使用 Aspose API,開發人員和應用程序可以基於 PowerPoint 幻燈片創建框架(然後可以將其轉換為視頻)、將演示文稿轉換為其他文件、編輯和操作演示文稿等。
在 C# 中將 PPT 轉換為 MP4 視頻
- 使用 dotnet add package 命令將 Aspose.Slides 和 FFMpegCore 添加到您的項目中:
- 運行
dotnet add package Aspose.Slides.NET --version 22.11.0
- 運行
dotnet add package FFMpegCore --version 4.8.0
- 運行
- 下載 ffmpeg 此處。
- FFMpegCore 要求您指定下載的 ffmpeg 的路徑(例如提取到“C:\tools\ffmpeg”):
GlobalFFOptions.Configure(new FFOptions { BinaryFolder = @"c:\tools\ffmpeg\bin",} );
- 運行以下 C# 代碼將 PowerPoint PPT 轉換為視頻:
using System.Collections.Generic;
using Aspose.Slides;
using FFMpegCore; // Will use FFmpeg binaries we extracted to "c:\tools\ffmpeg" before
using Aspose.Slides.Animation;
using (Presentation presentation = new Presentation())
{
// 添加微笑形狀,然後為其設置動畫
IAutoShape smile = presentation.Slides[0].Shapes.AddAutoShape(ShapeType.SmileyFace, 110, 20, 500, 500);
IEffect effectIn = presentation.Slides[0].Timeline.MainSequence.AddEffect(smile, EffectType.Fly, EffectSubtype.TopLeft, EffectTriggerType.AfterPrevious);
IEffect effectOut = presentation.Slides[0].Timeline.MainSequence.AddEffect(smile, EffectType.Fly, EffectSubtype.BottomRight, EffectTriggerType.AfterPrevious);
effectIn.Timing.Duration = 2f;
effectOut.PresetClassType = EffectPresetClassType.Exit;
const int Fps = 33;
List<string> frames = new List<string>();
using (var animationsGenerator = new PresentationAnimationsGenerator(presentation))
using (var player = new PresentationPlayer(animationsGenerator, Fps))
{
player.FrameTick += (sender, args) =>
{
string frame = $"frame_{(sender.FrameIndex):D4}.png";
args.GetFrame().Save(frame);
frames.Add(frame);
};
animationsGenerator.Run(presentation.Slides);
}
// 配置 ffmpeg 二進製文件文件夾。請參閱此頁面:https://github.com/rosenbjerg/FFMpegCore#installation
GlobalFFOptions.Configure(new FFOptions { BinaryFolder = @"c:\tools\ffmpeg\bin", });
// 將幀轉換為 webm 視頻
FFMpeg.JoinImageSequence("smile.webm", Fps, frames.Select(frame => ImageInfo.FromPath(frame)).ToArray());
}
如果您想了解有關Aspose.Slides for .NET 功能 在PowerPoint 到視頻轉換方面的更多信息,請閱讀 轉換PowerPoint PPT視頻 文章。
在 Java 中將 PPT 轉換為 MP4
<dependency>
<groupId>網絡bramp.ffmpeg</groupId>
<artifactId>ffmpeg</artifactId>
<version>0.7.0</version>
</dependency>
- 運行以下 Java 代碼從 PowerPoint PPT 生成 MP4 視頻:
Presentation presentation = new Presentation();
try {
// 添加微笑形狀,然後為其設置動畫
IAutoShape smile = presentation.getSlides().get_Item(0).getShapes().addAutoShape(ShapeType.SmileyFace, 110, 20, 500, 500);
ISequence mainSequence = presentation.getSlides().get_Item(0).getTimeline().getMainSequence();
IEffect effectIn = mainSequence.addEffect(smile, EffectType.Fly, EffectSubtype.TopLeft, EffectTriggerType.AfterPrevious);
IEffect effectOut = mainSequence.addEffect(smile, EffectType.Fly, EffectSubtype.BottomRight, EffectTriggerType.AfterPrevious);
effectIn.getTiming().setDuration(2f);
effectOut.setPresetClassType(EffectPresetClassType.Exit);
final int fps = 33;
ArrayList<String> frames = new ArrayList<String>();
PresentationAnimationsGenerator animationsGenerator = new PresentationAnimationsGenerator(presentation);
try
{
PresentationPlayer player = new PresentationPlayer(animationsGenerator, fps);
try {
player.setFrameTick((sender, arguments) ->
{
try {
String frame = String.format("frame_%04d.png", sender.getFrameIndex());
ImageIO.write(arguments.getFrame(), "PNG", new java.io.File(frame));
frames.add(frame);
} catch (IOException e) {
throw new RuntimeException(e);
}
});
animationsGenerator.run(presentation.getSlides());
} finally {
if (player != null) player.dispose();
}
} finally {
if (animationsGenerator != null) animationsGenerator.dispose();
}
// 配置 ffmpeg 二進製文件文件夾。請參閱此頁面:https://github.com/rosenbjerg/FFMpegCore#installation
FFmpeg ffmpeg = new FFmpeg("path/to/ffmpeg");
FFprobe ffprobe = new FFprobe("path/to/ffprobe");
FFmpegBuilder builder = new FFmpegBuilder()
.addExtraArgs("-start_number", "1")
.setInput("frame_%04d.png")
.addOutput("output.avi")
.setVideoFrameRate(FFmpeg.FPS_24)
.setFormat("avi")
.done();
FFmpegExecutor executor = new FFmpegExecutor(ffmpeg, ffprobe);
executor.createJob(builder).run();
} catch (IOException e) {
e.printStackTrace();
}
如果您想了解有關Aspose.Slides for Java 功能 在PowerPoint 到視頻轉換方面的更多信息,請閱讀 將PowerPoint 轉換為MP4視頻文章。
用 C++ 從 PPT 生成視頻
void OnFrameTick(System::SharedPtr<PresentationPlayer> sender, System::SharedPtr<FrameTickEventArgs> args)
{
System::String fileName = System::String::Format(u"frame_{0}.png", sender->get_FrameIndex());
args->GetFrame()->Save(fileName);
}
void Run()
{
auto presentation = System::MakeObject<Presentation>();
auto slide = presentation->get_Slide(0);
// 添加微笑形狀,然後為其設置動畫
System::SharedPtr<IAutoShape> smile = slide->get_Shapes()->AddAutoShape(ShapeType::SmileyFace, 110.0f, 20.0f, 500.0f, 500.0f);
auto sequence = slide->get_Timeline()->get_MainSequence();
System::SharedPtr<IEffect> effectIn = sequence->AddEffect(smile, EffectType::Fly, EffectSubtype::TopLeft, EffectTriggerType::AfterPrevious);
System::SharedPtr<IEffect> effectOut = sequence->AddEffect(smile, EffectType::Fly, EffectSubtype::BottomRight, EffectTriggerType::AfterPrevious);
effectIn->get_Timing()->set_Duration(2.0f);
effectOut->set_PresetClassType(EffectPresetClassType::Exit);
const int32_t fps = 33;
auto animationsGenerator = System::MakeObject<PresentationAnimationsGenerator>(presentation);
auto player = System::MakeObject<PresentationPlayer>(animationsGenerator, fps);
player->FrameTick += OnFrameTick;
animationsGenerator->Run(presentation->get_Slides());
const System::String ffmpegParameters = System::String::Format(
u"-loglevel {0} -framerate {1} -i {2} -y -c:v {3} -pix_fmt {4} {5}",
u"warning", m_fps, "frame_%d.png", u"libx264", u"yuv420p", "video.mp4");
auto ffmpegProcess = System::Diagnostics::Process::Start(u"ffmpeg", ffmpegParameters);
ffmpegProcess->WaitForExit();
}
請閱讀將 PowerPoint 文件轉換為視頻 了解更多詳細信息。
探索雲 API
除了本地API 之外,Aspose 還提供雲產品,允許您將PowerPoint 轉換為視頻或其他文件、編輯和操作演示文稿、將其他文檔導入演示文稿, ETC。
結論
在本文中,您已經了解瞭如何使用免費的 PPT 到視頻轉換器在線將 PowerPoint PPT 轉換為視頻剪輯。此外,您還了解瞭如何使用不同的編程語言以編程方式執行 PPT 到視頻的轉換。