生成FastLogo子映像文件(fastlogo.subimg.gz)
介绍
本文档的范围是提供相关信息和说明用于从给定的PNG或JPEG文件生成fastlogo子映像文件(fastlogo.subimg.gz)。
fastlogo.subimg.gz文件布局
fastlogo.subimg.gz
是一个压缩文件,由两部分组成:文件头和logo/image数据。
文件的前1KB是文件头,其中包含有关logo/image的信息,
如版本、logo/image数量以及每个logo/image的具体细节(包括偏移、宽度、高度和大小)。
logo/image数据紧跟在文件头之后存储。
下面的布局简要介绍了分区。下图说明了 fastlogo.subimg.gz
文件的高级结构。

客制化fastlogo.subimg.gz
生成fastlogo.subimg.gz的脚本位于sdk代码库中的以下路径中。
YUV422 fastlogo生成脚本 -
<sdk_path>/build/tools/bin/create_fastlogo.sh
RGB24 fastlogo生成脚本 -
<sdk_path>/build/tools/bin/create_fastlogo_rgb24.sh
跨平台的fastlogo.subimg.gz logo/image的数据格式
如果需要自定义,则上述fastlogo.subimg.gz文件须用给定的参考脚本来修改/生成, 然后进行相应更新。
不同平台的Fastlogo输入:
SL1680/SL1640: logo/image 应为 YUV422 视频格式。
SL1620: logo/image 应为 RGB24 图形格式。
SL1640/SL1680:YUV422视频格式fastlogo.subimg.gz的生成
默认脚本 create_fastlogo.sh
以YUV422视频格式生成三张分辨率为 1920x1080、1280x720 和 800x1280 的图像。
若要调整分辨率,请参考下图,重点关注以“append_header”和“ffmpeg”开头的行,其中指定了分辨率。

append_header: 为logo image添加文件头信息, 如 宽度,高度以及每行的字节数。 根据所需的显示分辨率调整宽度和高度
let logo_offset=1024
append_binary8 $logo_offset $ofile
append_header 1920 1080 $ofile
ffmpeg: 此脚本使用ffmpeg将JPG/PNG文件转换为YUV422格式。 根据所需的显示分辨率调整/修改宽度和高度
ffmpeg -i $ifile -pix_fmt uyvy422 -s 1920x1080 -f rawvideo - | cat >> $ofile
SL1620:RGB24图形格式FastLogo子映像文件(FastLogo.subimg.gz)的生成
默认脚本 create_fastlogo_rgb24.sh
以RGB24图形格式生成三张分辨率为 800x1280 和 800x480 的图像。
若要调整分辨率,请参考下图,重点关注以“append_header”和“ffmpeg”开头的行,其中指定了分辨率。

append_header: 为logo image添加文件头信息, 如 宽度,高度以及每行的字节数。 根据所需的显示分辨率调整宽度和高度
let logo_offset=1024
append_binary8 $logo_offset $ofile
append_header 800 1280 $ofile
ffmpeg: 此脚本使用ffmpeg将JPG/PNG文件转换为YUV422格式。 根据所需的显示分辨率调整/修改宽度和高度
ffmpeg -i $ifile -pix_fmt rgb24 -s 800x1280 -f rawvideo -vf transpose=2 - | cat >> $ofile
生成fastlogo.subimg.gz的步骤
包含“Astra reference logo” 的 fastlogo.subimg.gz文件可在以下位置找到。
<SDK_PATH>/configs/product/<profile>
fastlogo.subimg.gz 文件生成脚本的参数
SL1620: 生成 RGB24 logo subimage
create_fastlogo_rgb24.sh -i <input Jpeg/PNG file> -o fastlogo.subimg
SL1640/SL1680: 生成 YUV422 logo subimage
create_fastlogo.sh -i <input Jpeg/PNG file> -o fastlogo.subimg
显示自定义fastlogo的步骤
上面的命令/脚本生成fastlogo.subimg.gz文件。
将上述步骤中生成的fastlogo.subimg.gz复制到
<sdk_path>/configs/product/
构建映像。
在
eMMCimg
目录中生成的fastlogo.subimg.gz
将包含自定义fastlogo.