Тест жесткого видеокодека rk3588 mpp

Запись об использовании демо-версии rk3588 mpp.

1 Скачать исходный код

Официальный адрес выпуска исходного кода MPP: https://github.com/rockchip-linux/mpp.
Ветка выпуска — это ветка выпуска, ветка разработки — это ветка разработки, а по умолчанию — ветка разработки.
Команда загрузки: git clone https://github.com/rockchip-linux/mpp.git

2 компилировать

Сценарий компиляции исходного кода MPP — cmake, для которого требуется версия 2.8.12 или более поздняя. Рекомендуется использовать версию 2.8.12. Использование более поздних версий инструмента cmake
может привести к появлению большего количества предупреждений.

2.1 Кросс-компиляция платформы Android

Для компиляции библиотеки Android требуется использование среды ndk, а сценарий по умолчанию компилируется с использованием android-ndk-r10d.
Путь загрузки r10d ndk можно найти в файле build/android/ndk_links.md в каталоге исходного кода.
Разархивируйте загруженный ndk в /home/pub/ndk/android-ndk-r10d или вручную измените
путь к переменной ANDROID_NDK сценария env_setup.sh в каталоге build/android/.
Войдите в каталог build/android/arm/, запустите сценарий make-Android.bash, чтобы сгенерировать Makefile для компиляции, и запустите make –j16 для
компиляции.

2.2 Компиляция для платформы Unix/Linux

Сначала настройте цепочку инструментов в файле Arm.linux.cross.cmake в каталоге build/linux/arm/, затем запустите сценарий make-Makefiles.bash, чтобы
сгенерировать Makefile через cmake, и, наконец, запустите make –j16 для компиляции.
MPP также поддерживает компиляцию непосредственно в Debian, работающем на плате разработки.

3 Скопируйте скомпилированные файлы и соответствующие библиотеки на устройство.

4 инструкции

mpi_enc_test 的命令参数中,图像宽度(w)图像高度(h),码流类型(t)为强制要求参数,
其他参数如输入文件(i),输出文件(o),编码帧数(n)等为可选参数。
如果没有指定输入文件,mpi_enc_test会生成默认彩条图像进行编码。
以编码/sdcard 下的 soccer_720x480_30fps.yuv 文件 10 帧为例,对 demo 和输出进行说明。

运行的命令为:
mpi_enc_test -w 720 -h 480 -t 7 -i /sdcard/soccer_720x480_30fps.yuv -o /sdcard/out.h264 -n 10
mpi_dec_test 的命令参数中,输入文件(i),码流类型(t)为强制要求的参数,其他参数如输出文件(o),图像宽度(w)图像高度(h),
解码帧数(n)等为可选参数,影响不大。
后面的打印显示了 MPP 库支持的 coding 格式,支持 MPEG2/4,H.263/4/5,VP8/9 的解码,id 后的数字为格式对应的-t 项后的参数值。
参数值来源于 OMX 的定义,HEVC 和 AVS 的格式参数值与其他的格式参数值区别较大,需要留意。
然后以/sdcard/下的 tennis200.h264 解码 10 帧为例,对 demo 和输出进行说明。

运行的命令为:
mpi_dec_test -t 7 -i /sdcard/tennis200.h264 -n 10
-t 7 表示是 H.264 码流,-i 表示输入文件,-n 10 表示解码 10 帧

5 Конвертируйте видео в формат YUV для кодирования и декодирования.

Преобразование с помощью инструмента ffmpeg на Linux-сервере

将 mp4 格式转换成 yuv
ffmpeg -i input.mp4 -s 640x480 -pix_fmt yuv420p output.yuv 
备注:-i 表示设定输入流-s 设定画面的宽与高(此项很重要)-pix_fmt 设定的像素格式

播放 yuv 视频
ffplay -video_size 640x480 -i output.yuv-video_size 
播放的视频文件的帧宽度和帧高度(此项需和前面转换的 “-s 640x480” 保持一致)-i 表示指定的输入文件

Je suppose que tu aimes

Origine blog.csdn.net/weixin_43069863/article/details/132212568
conseillé
Classement