带有opencv的H264视频编解码器

man*_*ans 8 c++ opencv h.264 fourcc

我正在尝试使用opencv创建一个电影,我需要输出文件是H264格式.

我在opencv中使用了以下fourcc,但是我收到的错误是没有安装合适的编解码器.

fourcc=CV_FOURCC('H','2','6','4') ;
Run Code Online (Sandbox Code Playgroud)

当我运行我的应用程序时,我收到以下错误消息:

Could not find encoder for codec id 28: Encoder not found
Run Code Online (Sandbox Code Playgroud)

我需要什么才能在OpenCV中使用此编解码器?

kam*_*gin 8

H264不是编解码器,而是标准,而例如x264是实现H264标准的编码器(CV_FOURCC('X','2','6','4');).

OpenCV可以使用FFMPEG或VFW写视频.您需要使用x264-support编译FFPMEG(可以在FFMPEG的网站上找到说明)

如果您使用的是VFW:请查看http://sourceforge.net/projects/x264vfw/

  • 你知道 VFW x264 编解码器的 Fourcc 或 id 吗?如果我使用 `fourcc=CV_FOURCC('X','2','6','4') ;` 我会在终端和 vfw 日志窗口中收到一个警告,我想省略它。但是视频已成功录制...所以我只想删除警告消息和窗口,我想我可以通过提供正确的 id 或 Fourcc 代码来实现这一点... (2认同)