如何在使用 ffmpeg-python 时预览 ffmpeg 命令行

fma*_*gno 1 python ffmpeg

假设我实现了以下使用ffmpeg-python 的python 脚本:

# facetime.py

import ffmpeg

ffmpeg \
    .input(
        'FaceTime',
        format='avfoundation',
        pix_fmt='uyvy422',
        framerate=30
    ) \
    .output(
        'out.mp4',
        pix_fmt='yuv420p',
        vframes=100
    ) \
    .run()
Run Code Online (Sandbox Code Playgroud)

是否有ffmpeg将要执行的相应命令打印到标准输出的机制?

fma*_*gno 5

找到了:

cmd = ffmpeg \
    .input(
        'FaceTime',
        format='avfoundation',
        pix_fmt='uyvy422',
        framerate=30
    ) \
    .output(
        'out.mp4',
        pix_fmt='yuv420p',
        vframes=100
    )

args = cmd.get_args()
print(f'Args: {args}')
Run Code Online (Sandbox Code Playgroud)

输出:

Args: ['-f', 'avfoundation', '-framerate', '30', '-pix_fmt', 'uyvy422', '-i', 'FaceTime', '-pix_fmt', 'yuv420p', '-vframes', '100', 'out.mp4']
Run Code Online (Sandbox Code Playgroud)