本篇旨在帮你学会1件事:把PDF转换为视频形式,固定秒数播放一张。

1. 思路分析

第一步,把PDF变成图片;
第二步,把图片按照固定秒数进行播放。

能做到这两件事情的工具很多,有些PDF浏览器本身可以批量导出图片,甚至PPT都可以胜任图片转视频,大家偶尔用一下直接PPT即可,但我们既然学习就学最方便、最快的方法,先问问AI怎么看?

file

AI给出的思路是:

  • ImageMagick(将 PDF 转换为图片)
  • FFmpeg(将图片合成为 MP4 视频)

但经过后续追问,发现ImageMagick处理PDF时还需要依赖Ghostscript,而其实Ghostscript可以单独胜任这一步工作。我知道你也快晕了,不用担心,自己跟着感觉问,两轮就都知道,所以Ghostscript变成了我们第一选择。
file

接下来要做的就简单了,首次需要安装两款工具,后续整个处理过程亲测1分钟以内完成。

  1. Ghostscript:负责PDF转图片(有些PDF浏览器支持直接导出图片,则可以省略第一步)
  2. ffmpeg:负责图片转视频

2. 工具准备

2.1 下载 Ghostscript

下载地址:https://ghostscript.com/releases/gsdnld.html
file

选择I Agree,然后一路“下一步”即可,会自动添加到系统环境变量。
filefile

2.2 下载 ffmpeg

点击查看ffmpeg安装方法

3. PDF转图片

我们这一步使用Ghostscript,要达成的效果是,PDF中的每一张生成一张300分辨率高清图片。

file

打开CMD终端,复制粘贴并修改下方代码与你的文件名称匹配:

gswin64c -sDEVICE=pngalpha -r300 -o page_%03d.png input.pdf

参数说明:
-sDEVICE=pngalpha:指定输出为 PNG 格式。
-r300:设置分辨率为 300 DPI。
-o output_%03d.png:输出文件名模板(如 output_001.png, output_002.png)。
input.pdf:输入的 PDF 文件路径【主要改这里】

4. 图片转视频

我们这一步使用ffmpeg,完成图片转视频秒处理。

4.1 打开终端CMD

切换到存放上一步输出图片的文件夹:

cd /path/to/your/images

其实这一步不用指令也行,直接打开存放图片的文件夹,然后在地址栏输入 cmd 按回车,效果也一样。
file

4.2 图片转视频指令

ffmpeg -framerate 1/5 -i page_%03d.png -c:v libx264 -r 30 -pix_fmt yuv420p output.mp4

参数详细说明:
-framerate 1/5:每张图片播放 5 秒。
-i page_%03d.png:按序列名称(如 page_001.png)读取图片。
-c:v libx264:使用 H.264 编码,生成兼容性高的视频。
-r 30:输出视频帧率为 30 FPS。
-pix_fmt yuv420p:使用兼容性高的像素格式,适配大多数播放器。
output.mp4:生成的视频文件名为 output.mp4。

4.3 参数详细修改指南

-framerate 1/5

作用:设置输入图片的帧率(Frame Rate)。
1/5 表示每张图片显示 5秒。

修改方法:
如果希望每张图片显示 2 秒,改为 1/2。
如果每张图片显示 1 秒,改为 1/1 或直接写 1。

-i page_%03d.png

作用:指定输入图片序列的格式和命名规则。
page%03d.png:表示图片文件名以 page 开头,后面是 3 位数字(如 001, 002)。
%03d 是数字格式化规则,表示 3 位数字,前面不足 3 位补零。
如果图片文件名格式不同(如 image_001.png),需要修改为相应的模板。

-c:v libx264

作用:指定视频编码器。
libx264 是常用的视频编码器,支持高效压缩,适用于大多数播放器和设备。

修改方法:
如果想要更高压缩效率,可以使用 libx265(需要设备支持)。
如果需要更快处理速度,可以使用 mpeg4 编码器。

-r 30

作用:设置输出视频的帧率(Frames per Second, FPS)。
30 表示视频每秒有 30 帧。

修改方法:
常见帧率为 24(电影标准)或 60(高帧率视频)。
输出文件会插帧,使每张图片的显示时长符合 -framerate 设置。

-pix_fmt yuv420p

作用:指定输出视频的像素格式。
yuv420p 是一种兼容性较高的像素格式,适用于大多数视频播放器。

修改方法:
如果需要更高质量,可以改为 yuv444p,但文件会变大且兼容性降低。

output.mp4

作用:指定输出文件的名称和格式。
文件名为 output,可以按需修改,格式为 mp4。
如果需要输出其他格式,如 AVI、MKV,可以直接修改扩展名。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。