Andy Hu 207bcbe3b9 codaj12: strictly treat building warning as error and fix warning 2 years ago
..
cfg f346e62342 jpu: add chip and media jpu code from 5.13 version 2 years ago
cmd f346e62342 jpu: add chip and media jpu code from 5.13 version 2 years ago
ffmpeg f346e62342 jpu: add chip and media jpu code from 5.13 version 2 years ago
jdi 207bcbe3b9 codaj12: strictly treat building warning as error and fix warning 1 year ago
jpuapi efd6042e3f Fix the problem of out of order output of output port buffer 1 year ago
sample 207bcbe3b9 codaj12: strictly treat building warning as error and fix warning 1 year ago
script f346e62342 jpu: add chip and media jpu code from 5.13 version 2 years ago
stream f346e62342 jpu: add chip and media jpu code from 5.13 version 2 years ago
yuv f346e62342 jpu: add chip and media jpu code from 5.13 version 2 years ago
Android.mk f346e62342 jpu: add chip and media jpu code from 5.13 version 2 years ago
Makefile f346e62342 jpu: add chip and media jpu code from 5.13 version 2 years ago
Nieuport_JpgDec f346e62342 jpu: add chip and media jpu code from 5.13 version 2 years ago
Nieuport_JpgEnc f346e62342 jpu: add chip and media jpu code from 5.13 version 2 years ago
README.md 1ce020faa7 update README about JPU 2 years ago
TestRunnerCodaJ12Dec.sh f346e62342 jpu: add chip and media jpu code from 5.13 version 2 years ago
TestRunnerCodaJ12Enc.sh f346e62342 jpu: add chip and media jpu code from 5.13 version 2 years ago
TestRunnerCodaJ12Multi.sh f346e62342 jpu: add chip and media jpu code from 5.13 version 2 years ago
TestRunnerCommon.sh f346e62342 jpu: add chip and media jpu code from 5.13 version 2 years ago
TestRunnerParamCodaJ12Dec.txt f346e62342 jpu: add chip and media jpu code from 5.13 version 2 years ago
TestRunnerParamCodaJ12Enc.txt f346e62342 jpu: add chip and media jpu code from 5.13 version 2 years ago
build_ffmpeg.sh f346e62342 jpu: add chip and media jpu code from 5.13 version 2 years ago
build_for_riscv.sh f346e62342 jpu: add chip and media jpu code from 5.13 version 2 years ago
codaj12Driver_buildroot.mak 207bcbe3b9 codaj12: strictly treat building warning as error and fix warning 1 year ago
codaj12_buildroot.mak 207bcbe3b9 codaj12: strictly treat building warning as error and fix warning 1 year ago
config.h f346e62342 jpu: add chip and media jpu code from 5.13 version 2 years ago

README.md

JPU(CODA12) driver/test for linux

本工程编译依赖于freedom-u-sdk的buildroot编译工具链。

注:JPU_PATH为本工程的顶层目录

一键编译脚本

$cd $JPU_PATH && ./build_ffmpeg.sh   	#编译ffmpeg
$cd $JPU_PATH && ./build_for_riscv.sh	#编译jpu driver && jpu 测试程序

在freedom-u-sdk的buildroot编译工具链编译生成后,进入JPU_PATH,运行build_for_riscv.sh一键编译脚本。

该脚本会将编译出的驱动(jpu.ko)、用户态程序(jpg_enc_test 、jpg_dec_test、multi_instance_test)、脚本文件(script)、测试/配置源文件(cfg、steam、yuv)拷贝到initramfs的文件系统中,在freedom-u-sdk顶层目录删除work/initramfs.cpio.gz和work/image.fit文件后重新make freedom-u-sdk工程,可以将所有文件打包到image.fit中,系统启动后可以直接进入到对应目录,运行测试程序。或者用户也可以待vic linux系统启动后,将编译好的相关文件,通过网络(比如scp tftp等)手动将需要的文件传输到initramfs文件系统中。

一键运行脚本

linux系统启动后

$cd root/jpu_driver/driver && ./load.sh  #安装模块驱动  
$cd ../ && ./run_all.sh 		  #运行所有测试项

手动编译安装说明

ffmpeg编译

$cd $JPU_PATH/ffmpeg/src  && tar -xvf ffmpeg-*.tar.gz   #进入ffmpeg源码目录,解压源码
$cd ffmpeg-xxx && ./config_ffmpeg_riscv.sh     			#运行ffmpeg配置
$make -jN && make install 								#默认安装到 $JPU_PATH/ffmpeg/

内核驱动模块编译

 $cd  $JPU_PATH/jdi/linux/driver
 $source build_env_setup_riscv.sh
 $make

将生成jpu.ko模块驱动文件,使用load.sh安装模块驱动文件。

编译用户态编解码测试程序

 $cd $JPU_PATH
 $make clean && make 

将生成jpg_enc_test 、jpg_dec_test可执行程序,分别用于编码、解码测试。

编译用户态多路测试程序:

$cd $JPU_PATH
$make clean && make MAKECMDGOALS=multi

将生成multi_instance_test,最多支持4路同时编、解码操作。

驱动模块安装

将$JPU_PATH/jdi/linux/driver/目录下编译出的jpu.ko文件和load.sh一起放进文件系统中,执行load.sh,安装模块驱动。

编解码测试

将script目录下的.sh文件拷贝到$JPU_PATH目录:

$./run_enc.sh   #编码测试,编码后的文件存在output/enc中
$./run_dec.sh   #解码测试,解码后的文件存在output/dec中
$./run_multi.sh #多路编解码测试,编解码后的文件存在output/multi中