C 使用ffmpeg将文件从一种格式转换为另一种格式

C 使用ffmpeg将文件从一种格式转换为另一种格式,c,ffmpeg,video-conversion,audio-converter,C,Ffmpeg,Video Conversion,Audio Converter,我是新来的ffmpeg,我想知道如何将音频或视频文件从一种格式转换成另一种格式。我不想使用CLI,我只想知道我是否可以使用ffmpeg作为库并调用函数将文件从一种格式转换为另一种格式。我浏览了文档,找到了函数avcodec\u encode\u audio和avcodec\u encode\u video,但不清楚如何使用它进行转换。一个教程或一个例子将非常有用 通常我是通过命令行来完成的 ffmpeg -i input.mp4 -vcodec copy -acodec copy out.mkv

我是新来的
ffmpeg
,我想知道如何将音频或视频文件从一种格式转换成另一种格式。我不想使用
CLI
,我只想知道我是否可以使用
ffmpeg
作为库并调用函数将文件从一种格式转换为另一种格式。我浏览了文档,找到了函数
avcodec\u encode\u audio
avcodec\u encode\u video
,但不清楚如何使用它进行转换。一个教程或一个例子将非常有用

通常我是通过命令行来完成的

ffmpeg -i input.mp4 -vcodec copy -acodec copy out.mkv
这里的i/p文件是input.mp4,它将被转换成out.mkv,所有基本流都有相同的编解码器

注意:只有当.mkv容器支持input.mp4的所有编解码器时,upper命令才会起作用。

如果您不关心编解码器,请使用

 ffmpeg -i input.mp4 out.mkv

这将把mp4转换成mkv(如有必要,还将更改输出格式的编解码器)

这是
CLI
命令行界面的转换方式;)如果可能的话,我计划从我的程序中调用
ffmpeg
库中定义的函数。。但是,我不确定如何解决这个编解码器问题。。通常我不指定编解码器格式(即我只指定
ffmpeg-i inputFile outputFile
,但是现在我正在从mp4转换为mp3..我得到这个错误:
编码器(编解码器无)找不到输出流#0:0
。请参阅完整的命令和错误日志@abbood Thank man.。我从事ffmpeg已有2年了。因此,现在不知道太多详细信息,但您的ffmpeg中似乎没有安装或不支持输出文件的容器格式支持的编解码器的编码器库,因此需要安装或提供支持orted编解码器的名称通过CLI对流进行编码