Anycloud平台LOGO生成方法

Anycloud平台LOGO生成方法

0. 摘要

  1. Anycloud37D/E、Sky37D/E 均适用
  2. 本方法使用ffpmeg工具

1. 转换原理

实际开发中,用到的原始logo文件可能为*.jpeg、.png、.bmp等等,Anycloud平台的启动logo文件本质上就是原始的RGB数据(RGB565、RGB888),具体的格式因不同的LCD而定.

所以,我们需要将图片文件转换成原始的RGB数据,然后烧录到机器上.

2. 环境安装

因为logo的生成需要ffmpeg工具,此工具兼容主流系统(windows/Linux/MacOS),所以需要先安装到开发系统下面.

  • Linux下载方法(Ubuntu):
    sudo apt-get install ffmpeg

  • Windows下载方法:
    参考网友方法:https://www.jianshu.com/p/5015a477de3c

  • Mac下载方法(没有钱购买,实测不知道行不行):
    参考网友方法:https://zhuanlan.zhihu.com/p/462940319

安装完成后,确认已经能够运行起来(如windos):

E:\Notes\Pic>ffmpeg -version
ffmpeg version 2022-05-19-git-dd99d34d67-full_build-www.gyan.dev Copyright (c) 2000-2022 the FFmpeg developers
built with gcc 11.3.0 (Rev1, Built by MSYS2 project)
configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
libavutil      57. 24.101 / 57. 24.101
libavcodec     59. 28.100 / 59. 28.100
libavformat    59. 24.100 / 59. 24.100
libavdevice    59.  6.100 / 59.  6.100
libavfilter     8. 38.100 /  8. 38.100
libswscale      6.  6.100 /  6.  6.100
libswresample   4.  6.100 /  4.  6.100
libpostproc    56.  5.100 / 56.  5.100

能看到版本信息就表明已经可以.

3. Logo生成

安装完成ffmpeg后,就可以直接开干,拿出一个原始的logo文件:
Anycloud平台LOGO生成方法_第1张图片
这里使用一个jpeg格式的logo文件,分辨率为533*300.

格式的换砖,使用ffmpeg进行生成:

  • RGB888格式:
    ffmpeg -i linux.jpeg -pix_fmt rgb24 linux.rgb
  • RGB565格式:
    ffmpeg -i linux.jpeg -pix_fmt rgb565 linux.rgb

4. 查看logo文件

转换生成后的logo为原始的rgb数据文件,可以使用GIMP 软件进行查看.
查看前面生成的RGB888文件:

  1. 导入
    因为软件识别原始RGB文件时,文件后缀时 *.data,所以导入前需要修改LOGO文件后缀名.
    Anycloud平台LOGO生成方法_第2张图片
  2. 确认打开
    Anycloud平台LOGO生成方法_第3张图片
    此时就能够确认logo已经转换成功。

注意:

  • RGB565格式查看流程一致,设置好分辨率,以及数据格式.
  • 由于Anycloud平台定义的RGB888存储格式与网络的RGB存储格式刚好R、B分量相反,所以再实际使用时,生成logo需要使用配置参数为BGR888:ffmpeg -i linux.jpeg -pix_fmt bgr24 linux.rgb.
  • RGB565生成的格式与Anycloud平台一致,不需要对调R、B 分量.

你可能感兴趣的:(Anyka,ubuntu,linux,音视频)