2

我正在尝试在树莓派 4B 型号上启用对 H264 编码的硬件支持。编译 FFmpeg 源代码启用配置

sudo ./configure --arch=armel --target-os=linux --enable-gpl --enable-omx --enable-omx-rpi --enable-nonfree

按照链接,https://github.com/legotheboss/YouTube-files/wiki/ (RPi)-Compile-FFmpeg-with-the-OpenMAX-H.264-GPU-acceleration

但是在使用这些配置正确构建和安装 ffmpeg 后执行编码命令时,我收到以下错误

[h264_omx @ 0x156b6e0] Using OMX.broadcom.video_encode
[h264_omx @ 0x156b6e0] OMX error 80001000
[h264_omx @ 0x156b6e0] err 80001018 (-2147479528) on line 561
Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
Conversion failed!

使用的命令:

ffmpeg -i /media/pi/pic_1_org.png -c:v h264_omx -c:a copy -b:v 1500k outputfile.mp4

我只想使用 H.264 编码器将单个 4K 图像编码为 .mp4 文件。请让我知道如何解决此问题?

4

3 回答 3

3

Raspberry Pi 4 上的硬件 H.264 编码器仅支持 1920x1080 或更低的分辨率。所以没有硬件支持 4k 编码。

于 2020-03-05T16:09:38.780 回答
1

apt 提供的 ffmpeg 版本现在具有硬件编解码器,因此您可以使用以下命令安装它:

apt install ffmpeg

您可以像这样验证他们的存在:

ffmpeg -codecs | grep 'h264_omx\|h264_v4l2m2m'

有两种方法可以使用硬件编解码器 - 使用较新的h264_v4l2m2mh264_omx基于 OMX 的一种。

注意: 中的gpu_mem设置/boot/config.txt需要大于 16 - 否则两个编解码器都会出错。

于 2021-03-23T23:54:48.650 回答
0

请使用这个简单的命令尝试 raspberrypi4 的 ARMv6 NEON 功能

ffmpeg -i 4k-input.mp4  -vf scale=-1:360  360p-output.mp4

不要添加任何东西!

于 2020-08-17T22:19:58.117 回答