如何以编程方式使用ffmpeg?

如何以编程方式使用ffmpeg?,ffmpeg,Ffmpeg,我对ffmpeg不熟悉,我发现很多解决方案都是通过命令行给出的,而不是代码或函数,所以我的问题是: 为什么人们喜欢在ffmpeg中使用命令行,我如何将命令行转换为代码? 例如,文档建议通过以下方式将视频调整为指定大小: ffmpeg -i input.avi -vf scale=320:240 output.avi 但我如何在我的应用程序中以编程方式实现它呢 顺便说一句,ffmpeg中有两个名为libswresample和libswscale的库,“sw”代表什么? 重缩放和重采样之间的区别:

我对ffmpeg不熟悉,我发现很多解决方案都是通过命令行给出的,而不是代码或函数,所以我的问题是:

为什么人们喜欢在ffmpeg中使用命令行,我如何将命令行转换为代码?

例如,文档建议通过以下方式将视频调整为指定大小:

ffmpeg -i input.avi -vf scale=320:240 output.avi
但我如何在我的应用程序中以编程方式实现它呢

顺便说一句,ffmpeg中有两个名为libswresamplelibswscale的库,“sw”代表什么?

  • 重缩放和重采样之间的区别:
该库执行高度优化的图像缩放、颜色空间和像素格式转换操作

重新缩放:是更改视频大小的过程。有几种重缩放选项和算法可用。这通常是一个有损的过程

该库执行高度优化的音频重采样、重矩阵化和样本格式转换操作

重采样:更改音频速率的过程,例如从44100Hz的高采样率更改为8000Hz。从高采样率到低采样率的音频转换是一个有损过程。有几种重采样选项和算法可用

  • 要了解如何使用ffmpeg libs,请从
    git://source.ffmpeg.org/ffmpeg.git
    并查看
    doc/examples
    目录。 医生来了

  • sw
    代表软件


第一个问题是关于偏好,第二个问题非常模糊:这两个问题都不适合这个网站。如果你问到如何将特定的ffmpeg脚本转换为代码,那将更具主题性——尽管你会被期望展示你目前的工作。@jku你是对的,实际上,我不是在寻找特定的脚本转换,但是脚本和代码之间的一般关系,因此我可以在将来轻松地使用脚本开发代码。我在《FFmpeg基础》一书中找到答案,FFmpeg是一个用于多媒体处理的自由软件,而FFmpeg是一个命令行工具,作为FFmpeg的一部分,用于视频和音频编码/解码。另请参阅*