ffmpeg/Libavcodec 找不到编解码器

Posted

技术标签:

【中文标题】ffmpeg/Libavcodec 找不到编解码器【英文标题】:ffmpeg/Libavcodec couldn't find codec 【发布时间】:2021-03-01 02:18:01 【问题描述】:

我想制作一个从 h.264 到 h.265 的转码视频应用。 libavcodec 库有问题。我的项目中有这个库,所有功能都在工作,但是当我尝试设置编解码器时: avcodec_find_decoder_by_name("libx265"); 函数找不到它。然而,当我给“hevc”而不是“libx265”时,函数正在工作,但它不一样。 请帮忙:)

【问题讨论】:

【参考方案1】:

ffmpeg 已经实现了编解码器(我们称之为内置)和第三方编解码器的包装器。似乎/可能是 h265 编解码器只是一个包装器,这意味着您必须安装 h265 解码器。另外,你配置ffmpeg的时候有没有指定h265编解码?您是自己构建的还是通过包管理器预构建的?

在命令行中尝试“ffmpeg -decoders”并搜索 h265。

【讨论】:

【参考方案2】:

没有名为 libx265 的解码器

libx265 只是一个编码器。

FFmpeg 具有原生的内置 HEVC/H.265 解码器

它被命名为 hevc。您无需执行任何特殊操作即可包含或启用它。

还有几种硬件加速 HEVC 解码器可能适用于您的系统:hevc_cuvid、hevc_mediacodec、hevc_qsv、hevc_rkmpp 和 hevc_v4l2m2m。

【讨论】:

以上是关于ffmpeg/Libavcodec 找不到编解码器的主要内容,如果未能解决你的问题,请参考以下文章

spring mongo querydsl 找不到类 java.time.LocalDateTime 的编解码器

使用 ffmpeg 复制 GoPro 元数据 - 找不到编解码器的标签无

FFMPEG hwaccel 将 WEBM 转换为 MP4 视频失败:找不到编解码器参数

找不到用于FFmpeg转码的x264编解码器设备

spring-boot 2.1.0 mongo - CodecConfigurationException:找不到类 java.time.Year 的编解码器

使用ffmpeg libavcodec将视频流编码为H264,为啥持续时间为零