---
title: FFmpeg下HW265Enc使用参考
description: "以YUV文件转换为MP4文件为例，提供在FFmpeg下使用HW265Enc编码器编码的命令使用示例。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/251RC1/accel/kunpengcps_hw265enc_06_0013.html
sourcePath: /source/zh/kunpengboostkithistory/251RC1/accel/kunpengcps_hw265enc_06_0013.html
indexId: ad2f249f9d3a5c48f258116bc5918413ad62bb6de36fa50ca99a2fb124535eda79
---
# FFmpeg下HW265Enc使用参考

以YUV文件转换为MP4文件为例，提供在FFmpeg下使用HW265Enc编码器编码的命令使用示例。

在输入命令行选项时，除了输出文件名写在末尾，其他FFmpeg内置参数写在“ffmpeg”命令后面。libhw265编码器参数写在“libhw265”后面。参数的分类和说明如表1所示。


命令举例：

```
ffmpeg -s 1920x1080 -i input.yuv -bf 0 -c:v libhw265 -wpp_threads 4 output.mp4
```

显示信息如下：

```
Input #0, rawvideo, from 'input.yuv':
  Duration: 00:01:00.00, start: 0.000000, bitrate: 622080 kb/s
    Stream #0:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 1920x1080, 622080 kb/s, 25 tbr, 25 tbn, 25 tbc
File 'output.mp4' already exists. Overwrite ? [y/N] y
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> hevc (libhw265))
Press [q] to stop, [?] for help
Output #0, mp4, to 'output.mp4':
  Metadata:
    encoder         : Lavf58.29.100
    Stream #0:0: Video: hevc (libhw265) (hev1 / 0x31766568), yuv420p, 1920x1080, q=2-31, 200 kb/s, 25 fps, 12800 tbn, 25 tbc
    Metadata:
      encoder         : Lavc58.54.100 libhw265
frame= 1500 fps= 13 q=-0.0 Lsize=   34439kB time=00:00:58.96 bitrate=4785.1kbits/s speed=0.504x    
video:34432kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.020906%
```


**表1 FFmpeg可执行选项配置说明**

| FFmpeg命令行参数 | 参数分类 | 参数说明 |
| --- | --- | --- |
| \-i | FFmpeg内置参数 | 设置输入文件的名称。 对应libhw265编码器命令行参数：\-i。 |
| \-s | FFmpeg内置参数 | 设置输入图像宽度和高度。 对应libhw265编码器命令行参数：\-w，\-h。 |
| \-vframes | FFmpeg内置参数 | 设置需要进行编码的帧数。 对应libhw265编码器命令行参数：\-\-frames。 |
| \-fps\_num | libhw265编码器参数 | 设置输出视频的编码帧率，取值范围为（0, 120]，如果不是此范围内，设为默认值25。 对应libhw265编码器命令行参数：\-\-fps\_num。此时默认编码器命令行参数fps\_den为1。 |
| \-channel | libhw265编码器参数 | 设置当前编码器的ID，通过编码器的ID值，来识别不同编码器，默认值为0。 |
| \-log\_level | libhw265编码器参数 | 设置编码器日志输出等级，默认值为1。 0：关闭日志。 1：打开error级别，只上报错误信息。 2：打开warning级别，上报告警消息和小于warning级别的信息。 3：打开info级别，上报重要消息和小于info级别的信息。 4：打开debug级别，上报调试消息和小于debug级别的信息。 |
| \-frame\_threads | libhw265编码器参数 | 设置帧级编码的线程数，一般值越大，编码速率越高。取值范围为[1, 38]，默认值为12。 对应libhw265编码器命令行参数：\-\-FrmThreadNum。 |
| \-wpp\_threads | libhw265编码器参数 | 设置wpp行级编码的线程数，一般值越大，编码速率越高。取值范围为[1, 20]，默认值为8。 对应libhw265编码器命令行参数：\-\-WppThreadNum。 |
| \-analysis\_threads | libhw265编码器参数 | 设置预分析线程个数，预分析提前扫描即将到来的帧，能一定程度上提高编码画质，但增加编码延时。取值范围[1, 48]，默认值为5。 对应libhw265编码器命令行参数：\-\-LookAheadThreads。 |
| \-adap\_I | libhw265编码器参数 | 设置开启场景自适应I帧，开启后会提高编码画质，降低编码速率。取值范围[0, 1]，默认值为1。如果不是此范围内，设为默认值1。 对应libhw265编码器命令行参数：\-\-adapt\_i。 |
| \-profile | libhw265编码器参数 | 设置HW265编码器的编码复杂度，目前仅支持main profile，默认值为0。 |
| \-qualityset | libhw265编码器参数 | 设置编码画质等级，可选2，3，5，6四种档位，编码速度逐级加快，编码质量逐级降低，默认值为3。 对应libhw265编码器命令行参数：\-\-preset。 |
| \-keyint | libhw265编码器参数 | 设置I帧间隔。一般值越大，画质越高，编码速率越高。不小于1，默认值为150。 对应libhw265编码器命令行参数：\-\-keyInt。 |
| \-bframe\_nums | libhw265编码器参数 | 设置最大连续B帧数。一般值越大，相同码率下画质越高，编码速率越低。范围在[0, 7]之间，默认值为7。 对应libhw265编码器命令行参数：\-\-bframes。 |
| \-delay | libhw265编码器参数 | 设置时域分析缓存帧数。一般值越大，相同码率下画质越高，编码速率越低。取值范围[bframes, 150]，默认值25。 对应libhw265编码器命令行参数：\-\-delay。 |
| \-rc | libhw265编码器参数 | 设置标志码控策略。可选{0，1，2}，分别代表cqp（固定量化参数），abr（平均码率控制），crf（固定质量因子），如果不是此范围内，设为默认值0。 对应libhw265编码器命令行参数：\-\-rc。 |
| \-qp | libhw265编码器参数 | 设置量化参数QP，一般值越小量化步长越小，精度越高，相同画质下产生的数据量可能会更大。取值范围[1, 51]，默认值为18。仅在cqp模式生效。 |
| \-abr\_bitrate | libhw265编码器参数 | 设置平均码率。一般值越大，画质越高，编码速率越低。范围在[40kbps, 300000kbps]之间，如果超过此范围会设为默认值2000。 对应libhw265编码器命令行参数：\-\-br。仅在abr模式生效。 |
| \-crf | libhw265编码器参数 | 设置crf码控水平。一般crf值越小，码率、画质越高，编码速率越低。范围在[0, 51]之间，如果超过此范围会设为默认值23。 对应libhw265编码器命令行参数：\-\-crf。仅在crf模式生效。 |


FFmpeg详细使用教程请参见官网：https://ffmpeg.org/(https://ffmpeg.org/)。
