ffmpeg 生成mp4视频。

SineMetu1 2023-07-28 09:24:31

根据ffmpegAutoGen,默认可以生成H264的电影,生成流程大概就是

           //查找编码器
            var codecId = AVCodecID.AV_CODEC_ID_H264;
            _pCodec = ffmpeg.avcodec_find_encoder(codecId);

             //初始化编码器
            _pCodecContext = ffmpeg.avcodec_alloc_context3(_pCodec)

            //设置编码器
            ffmpeg.av_opt_set(_pCodecContext->priv_data, "preset", "veryslow", 0);
            //打开编码器
            ffmpeg.avcodec_open2(_pCodecContext, _pCodec, null).ThrowExceptionIfError();

现在需要改成生成MP4,WAV等格式电影,修改了AVCodecID格式也有问题,这个生成MP4,WAV等格式,需要修改哪些参数,有大神清楚吗?

...全文
143 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
BrillianceRen 2023-08-15
  • 打赏
  • 举报
回复

你这代码不能说毫不相关吧, 也可以说是一点关系没有.
MP4/WAV是封装, 你搞的这块代码是编码.
封装要写文件的, 相关方法:

av_guess_format("mp4", nullptr, "video/mp4");
avformat_alloc_output_context2
avformat_write_header
av_interleaved_write_frame
av_write_trailer

草履虫程序员 2023-07-31
  • 打赏
  • 举报
回复

你用命令行执行可以吗?先运行下,排查这个问题。

SineMetu1 2023-07-31
  • 举报
回复
@草履虫程序员 我用ffmpeg.AutoGen开发, 之前用的ffmpeg.exe命令行是可以的。
草履虫程序员 2023-08-02
  • 举报
回复
@SineMetu1 命令行运行试过了吗?

111,094

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧