视频宽高比调整
更新时间:2026-06-15
简介
视频宽高比调整处理器
功能描述
- 支持将视频调整到指定宽高比的画布尺寸
- 支持两种策略:padding(留边) 或 crop(裁剪)
- 支持本地/远端路径输入与输出路径指定
算子参数
输入
| 输入 | 含义 |
|---|---|
| input_col | - |
| output_col | - |
输出
| 输出 | 含义 |
|---|---|
| result | 算子输出 |
参数
| 参数名称 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| target_width | int | 必填 | 输出视频宽度(像素) |
| target_height | int | 必填 | 输出视频高度(像素) |
| mode | str | 'pad' | 处理模式,可选 "pad" 或 "crop" |
| video_codec | str | 'libx264' | 视频编码器,默认 libx264 |
| audio_codec | str | 'aac' | 音频编码器,默认 aac |
| extra_params | list[str] | None | 额外 ffmpeg 参数列表 |
| timeout | int | None | ffmpeg 执行超时时间(秒) |
调用示例
Python
1from __future__ import annotations
2
3import os
4
5import daft
6from daft import col
7
8from daft.aihc.common.udf import aihc_udf
9from daft.aihc.functions.video.video_aspect_ratio_adjust import VideoAspectRatioAdjust
10
11if __name__ == "__main__":
12 if os.getenv("DAFT_RUNNER", "native") == "ray":
13 import ray
14 ray.init(dashboard_host="0.0.0.0", ignore_reinit_error=True)
15 daft.set_runner_ray()
16 daft.set_execution_config(actor_udf_ready_timeout=6000, min_cpu_per_task=0)
17
18 # TODO: 根据实际场景准备样本数据
19 samples = {"input_col": [...], "output_col": [...]}
20 ds = daft.from_pydict(samples)
21 constructor_kwargs = {
22 "mode": 'pad',
23 "video_codec": 'libx264',
24 "audio_codec": 'aac',
25 }
26 ds = ds.with_column(
27 "result",
28 aihc_udf(
29 VideoAspectRatioAdjust,
30 construct_args=constructor_kwargs,
31 num_cpus=1,
32 concurrency=4,
33 batch_size=8,
34 )(col("input_col"), col("output_col")),
35 )
36 ds.show()
评价此篇文章
