Podeo.ai 这类按脚本生成视频的工具,画幅和时长不是导出时才决定的选项,而是生成任务的输入条件。生成前把画幅、单段时长、总时长定死,返工只需改参数重跑;生成后再裁,字幕位置、主体构图、配音与画面的对齐都要跟着重算,代价高出一截。判断顺序建议是:先查发布端要求,再定画幅与每句口播长度,最后在生成入口确认参数能设,导出后用命令复核。
适用场景:用 Podeo.ai 或同类文本生成视频工具做要发布的成片。操作动作:生成前把画幅(横屏/竖屏/方形)、单段时长、总时长写成一张参数表,并确认生成页面能设置这些项。验证方式:导出后用 ffprobe 读实际分辨率与时长,与参数表逐项对照。风险边界:页面是否支持按段设时长、是否锁定画幅,需要以当前页面实际行为为准;外部裁切只能救内容安全区内的画面,字幕烧进画面或主体贴边时,裁切会留下不可用的成片。
先把发布平台和画幅列成一张表
画幅由发布位置决定,不由工具默认值决定。横屏适合横版播放器、网页嵌入和演示场合;竖屏适合手机全屏浏览的信息流;方形多用于列表页或缩略图为主的展示位。同一个脚本投两个位置时,建议按两个任务分别生成,不要生成一个再靠裁切兼容。
| 发布位置 | 目标画幅 | 时长上限 | 查证方式 |
|---|---|---|---|
| 信息流竖屏位 | 9:16 | 待查 | 该平台发布/上传页的说明文字 |
| 横版播放器 | 16:9 | 待查 | 上传页限制提示、帮助中心条目 |
| 列表/缩略图位 | 1:1 | 待查 | 上传页限制提示 |
时长上限不要凭记忆写进脚本,去各平台的上传页或发布页看当次提示,平台规则会调整,页面提示才是当下能验证的依据。把查到的限制填进上表“时长上限”一列,再留出一小段余量给片头片尾,避免卡在边界上被拒。
按画幅反推每句口播的长度
竖屏画面窄,一句长口播要被切成多个碎画面,观感散且字幕容易挤。做法是先测自己的语速:拿一段自己念的口播稿录音,用下面命令看真实时长,再除以字数,得到“每秒大约念几个字”,后续按这个数反推每句能放多少字。
ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 sample_voice.wav
把测得的总秒数除以这段稿子的字数,就是自己的实际语速;再用目标单句秒数乘以语速,得到每句大致字数上限。这个数不是固定值,语速快慢、标点停顿都会影响,建议留一点余量。
长句拆成两句的判断点主要有三个:一是出现转折或因果词(但是、所以、不过、因此)时,转折前后各自成句;二是自然停顿处,念到需要换气的位置就该断开;三是并列项过多时,把并列内容拆到不同句子,避免一句里堆三个以上分句。拆完再回读一遍,画面节奏基本就跟着句子走了。
在生成入口确认画幅和时长在哪一步设置
正式提交前先在页面上逐项确认,别等生成完再找开关。检查项建议按下面顺序过一遍:
- 画幅选项在哪一步出现:是新建任务时选,还是生成设置里选,或由模板固定。
- 能否设定总时长:是有明确输入框,还是只由脚本长度自然决定。
- 是否支持按段单独设时长:分段生成时,每段能否独立控制,还是全局统一。
- 参数在生成后能否修改:若只能改文字重生成,就把参数核对放在提交前。
找不到时长设置时,替代做法是先用一段最短的脚本试生成,看输出时长与文本长度的关系,再据此决定正式稿写多长;画幅找不到设置项时,先用一条短脚本生成样片,用 ffprobe 读实际分辨率,确认默认画幅符合目标后再批量生成。不确定的地方以当前页面行为和样片输出为准,不要按经验猜。
生成后用 ffprobe 核对实际分辨率与时长
导出后不要只看播放器窗口,用命令读容器里的真实参数:
ffprobe -v error -select_streams v:0 \
-show_entries stream=width,height,duration,codec_name \
-of default=noprint_wrappers=1 output.mp4
ffprobe -v error -show_entries format=duration \
-of default=noprint_wrappers=1:nokey=1 output.mp4
第一条读视频流的宽高与流时长,第二条读容器总时长,两者不一致时以容器时长作为发布参照。把结果填进对照表,逐项判断是否放行:
| 参数 | 期望值(生成前设定) | 实际值(ffprobe 读出) | 判定 |
|---|---|---|---|
| width×height | 按平台表填写 | 待填 | 不一致则重生成或裁切 |
| format.duration | 脚本预估时长 | 待填 | 超出上限则删句或分段 |
| codec_name | 目标封装要求 | 待填 | 不匹配则转码 |
参数不对时的返工顺序
先判断改哪个:要改的段落数少、后续段落不依赖前段画面时,回生成入口改参数重生成受影响段落,再拼接,成本更低;整片画幅都要换、且字幕已烧进画面或主体贴近画面边缘时,外部裁切会把字幕切掉或让主体出框,此时直接重生成更稳妥。
- 重生成路线:备份原输出 → 回生成入口改画幅或时长 → 只重跑受影响段落 → 拼接 → ffprobe 复核分辨率与总时长。
- 外部裁切路线:先确认裁切后的宽高符合平台表 → 执行裁切 → 重新处理字幕与构图安全区 → 重新封装 → ffprobe 复核。
ffmpeg -i output.mp4 -vf "crop=ih*9/16:ih" -c:a copy cropped.mp4
裁切命令只处理画面,字幕若已烧进画面不会跟着重排,所以裁切路线的前提是字幕不贴边、主体位于中心安全区。这个前提不成立时,回到上一条路线重生成,别在已经裁坏的画面上继续补。