Som Qin ca80739c62 wave511: The limit of decoder instances is changed to 16 | vor 5 Monaten | |
---|---|---|
.. | ||
code | vor 5 Monaten | |
firmware | vor 1 Jahr | |
README.md | vor 2 Jahren |
注意: 运行make -f WaveDecode-ffmpeg.mak 之前,需要先执行./build_ffmpeg.sh,编译得到ffmpeg相关的库文件和头文件。强烈建议使用build_for_vdec.sh一键编译脚本编译全部文件。
单路解码 ./dec_test –output ./out.dat –input tv0.265 –codec 12
2路解码 ./multi_instance_dec_test –codec 0,0 –input bd_8b_01.cfg_0.264-0,bd_8b_01.cfg_0.264-1 –output bd_8b_01.cfg_0.yuv-0,bd_8b_01.cfg_0.yuv-1 –instance-num 2 –enable-wtl 1,1
4路解码 ./multi_instance_dec_test –codec 0,0,0,0 –input bd_8b_01.cfg_0.264-0,bd_8b_01.cfg_0.264-1,bd_8b_01.cfg_0.264-2,bd_8b_01.cfg_0.264-3 –output bd_8b_01.cfg_0.yuv-0,bd_8b_01.cfg_0.yuv-1,bd_8b_01.cfg_0.yuv-2,bd_8b_01.cfg_0.yuv-3 –instance-num 4 –enable-wtl 1,1,1,1
4.支持ffmpeg parser/demuxer ./ffmpeg_dec_test –codec 12 –output hevc_fhd_inter_8b_11.cfg_0.yuv –input media/hevc_fhd_inter_8b_11.cfg_0.mkv
VDEC默认使用cma方式从通用的CMA空间分配mem。如果想给VDEC指定特定的预留空间,可以在dts文件中做预留,同时,在文件code/vdi/linux/driver/vdec.c中,打开VPU_SUPPORT_RESERVED_VIDEO_MEMORY宏。预留方式简单示例:
```dts reserved_memory: reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;
vpu_reserved: framebuffer@d8000000 {
reg = <0x0 0xd8000000 0x0 0x20000000>;
};
}; vpu_dec:vpu_dec@118F0000 {
compatible = "starfive,vdec";
reg = <0 0x118F0000 0 0x10000>;
memory-region = <&vpu_reserved>;
interrupt-parent = <&plic>;
interrupts = <23>;
clocks = <&vpuclk>;
clock-names = "vcodec";
status = "okay";
};