在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于RK3576的BASE64編解碼

ljx2016 ? 來源:ljx2016 ? 作者:ljx2016 ? 2025-05-12 13:41 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1. BASE64編解碼簡介

Base64是網絡上最常見的用于傳輸8Bit字節碼的編碼方式之一,Base64就是一種基于64個可打印字符來表示二進制數據的方法。EASY EAI api封裝了BASE64編解碼工具,方便用戶對數據進行BASE64封裝。

2. 快速上手

如果您初次閱讀此文檔,請閱讀:《入門指南/源碼管理及編程介紹/源碼工程管理》,按需管理自己工程源碼(注:此文檔必看,并建議采用【遠程掛載管理】方式,否則有代碼丟失風險?。。。?/p>

2.1 源碼工程下載

先在PC虛擬機定位到nfs服務目錄,再在目錄中創建存放源碼倉庫的管理目錄:

cd ~/nfsroot
mkdir GitHub
cd GitHub

再通過git工具,在管理目錄內克隆遠程倉庫(需要設備能對外網進行訪問)

git clone https://github.com/EASY-EAI/EASY-EAI-Toolkit-3576.git
wKgZPGghipyAAO8nAAFHkLhl81w970.png

注:

* 此處可能會因網絡原因造成卡頓,請耐心等待。

* 如果實在要在gitHub網頁上下載,也要把整個倉庫下載下來,不能單獨下載本實例對應的目錄。

2.2 開發環境搭建

通過adb shell進入板卡開發環境,如下圖所示。

wKgZO2ghipyAYvm4AAC7JgRVz1M195.png

通過以下命令,把nfs目錄掛載上nfs服務器。

mount -t nfs -o nolock : /home/orin-nano/Desktop/nfs/
wKgZPGghip2AFSL0AAD6_a7KK6A454.png

2.3 例程編譯

然后定位到nfs的掛載目錄,再在目錄中創建存放源碼倉庫的管理目錄:

cd /home/orin-nano/Desktop/nfs/GitHub

進入到對應的例程目錄執行編譯操作,具體命令如下所示:

cd EASY-EAI-Toolkit-3576/Demos/common-base64/
./build.sh
wKgZO2ghip2AOitjAAG8C5H0aXc162.png

2.4 例程運行及效果

執行下方命令,運行示例程序:

./Release/test-base64

執行效果如下所示。

wKgZPGghip2Ac4yCAABXn7DjIUI071.png

API的詳細說明,以及API的調用(本例程源碼),詳細信息見下方說明。

3. BASE64編解碼API說明

3.1 引用方式

EASY EAI api庫位于本倉庫的easyeai-api目錄中。為方便客戶在本地工程中直接調用我們的EASY EAI api庫,此處列出工程中需要鏈接的庫以及頭文件等,方便用戶直接添加。

描述 CMake寫法 Makefile寫法
api.cmake ${common_root}/base64/api.cmake
頭文件目錄 ${BASE64_INCLUDE_DIRS} -I ../../easyeai-api/common/base64
源文件目錄 ${BASE64_SOURCE_DIRS} ../../easyeai-api/common/base64
庫文件目錄
庫鏈接參數 ${BASE64_LIBS}

API源代碼路徑為EASY-EAI-Toolkit-3576/easyeai-api/common/base64/。用戶可通過源代碼了解接口實現,甚至可對源碼進行修改。

3.2 BASE64編碼操作

編碼函數原型如下所示。

int32_t base64_encode(char *out_data, const char* in_data, unsigned int in_len);

具體介紹如下所示。

函數名base64_encode()
頭文件 easyeai-api/common/base64/base64.h
輸入參數 out_data:被編碼后的base64數據
in_data:編碼前的源數據
in_len:需要對源數據進行編碼部分的長度
返回值 編碼后,生成的base64字符串長度
注意事項 一般編碼后的數據,比編碼前的數據至少要多1/3,具體大小為輸入數據大小以3對齊后的4/3

3.3 BASE64解碼操作

解碼函數原型如下所示。

int32_t base64_decode(char *out_data, unsigned int out_len, const char* encoded_string);

具體介紹如下所示。

函數名base64_decode()
頭文件 easyeai-api/common/base64/base64.h
輸入參數 out_data:解碼后的數據
out_len:用于存放解碼后數據內存的總長度
encoded_string:待解碼數據
返回值 編碼后所得數據的長度
注意事項

4. BASE64操作API案例

示例代碼路徑為EASY-EAI-Toolkit-3576/Demos/common-base64/test-base64.c。

示例一,對字符串進行BASE64編碼,然后將得出的編碼數據再解碼。

char *cStr = "my name is hao";
char base64_data[1024] = {0};
char src_string[1024] = {0};

memset(base64_data, 0, sizeof(base64_data));
base64_encode(base64_data, cStr, strlen(cStr));
printf("encode data : %sn", base64_data);
base64_decode(src_string, sizeof(src_string), base64_data);
printf("source string : %sn", src_string)

示例二,驗證數據中有0x00,還原出來的數據不會在0x00處斷開。

char num_data[8] = {0x67, 0x88, 0x70, '', 'r', 'n', 0x73, 0x73};
char decode_data[8] = {0};
memset(base64_data, 0, sizeof(base64_data));
base64_encode(base64_data, num_data, sizeof(num_data));
printf("encode data : %sn", base64_data);
base64_decode(decode_data, sizeof(decode_data), base64_data);
printf("source string : 0x%02x 0x%02x 0x%02x 0x%02x 0x%02x 0x%02x 0x%02x 0x%02xn", 
	decode_data[0], decode_data[1], decode_data[2], decode_data[3],
	decode_data[4], decode_data[5], decode_data[6], decode_data[7]);

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 編解碼
    +關注

    關注

    1

    文章

    145

    瀏覽量

    20085
  • Base64
    +關注

    關注

    0

    文章

    26

    瀏覽量

    9024
  • rk3576
    +關注

    關注

    1

    文章

    166

    瀏覽量

    676
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Mpp支持RK3576

    想問下,https://github.com/rockchip-linux/mpp這里面支持RK3576么,看介紹沒有提到說支持RK3576 目前是買了個rk3576的機頂盒,搭載了安卓14,想做安卓視頻硬解。
    發表于 06-13 15:35

    RK3576 vs RK3588:為何越來越多的開發者轉向RK3576

    道 LPDDR4X/LPDDR5 存儲接口支持 eMMC 5.1、SD 3.0、SPI NAND更高帶寬,適合高速存儲需求 分析: RK3576 的 8K@30fps 解碼 已能滿足大多數智能終端需求(如廣告機
    發表于 05-30 08:46

    基于RK3576開發板的PWN使用說明

    RK3576開發板使用PWN教程及Demo
    的頭像 發表于 05-07 14:07 ?1246次閱讀
    基于<b class='flag-5'>RK3576</b>開發板的PWN使用說明

    從性能到成本,深度剖析 RK3588 與 RK3576 怎么選

    ),數據傳輸上RK3588更有優勢。 超強的視頻編解碼能力 編碼能力RK3588最高支持8K@30fps H.264/H.265,RK3576最高支持4K@60fps H.264/H.
    發表于 02-09 09:10

    探索 RK3576 方案:卓越性能與靈活框架,誠邀開發定制合作!

    能力視頻編解碼能力是 RK3576 的一大亮點。它支持 8K 視頻處理,無論是高清視頻的流暢播放還是高質量視頻的編碼錄制,都能出色完成。并且,它原生支持三屏異顯,最高支持 4K + 2.5K + 2K
    發表于 02-05 15:21

    rockchip rk3576開發設計資料

    附件資料說明: 1、包含了RK3576芯片規格書 2、包含RK3576硬件設計相關說明 3、包含RK3576DDR模版(原理圖+PCB原始文件) RK3576芯片特性介紹 處理能力
    發表于 02-05 11:39

    RK3576有多強?實測三屏八攝像頭輕松搞定

    RK3576參數強勁RK3576是瑞芯微推出的一款高性能AIoT處理器,這款芯片以其卓越的計算能力、多屏幕支持、強大的視頻編解碼能力和高效的協處理器而聞名。三屏8攝像頭輕松搞定米爾基于他們推出
    的頭像 發表于 01-16 08:06 ?613次閱讀
    <b class='flag-5'>RK3576</b>有多強?實測三屏八攝像頭輕松搞定

    【米爾RK3576開發板評測】+項目名稱值得購買的米爾RK3576開發板

    /H.265視頻的4K30Hz的編碼。 支持MPEG視頻4K30Hz的編解碼。 支持三屏異顯。 而RK3576最大的亮點是帶有6TOP/s的NPU,經過不少網友的測試,這個瑞芯微的NPU還是挺給力
    發表于 01-08 22:59

    米爾RK3576RK3588怎么選?-看這篇就夠了

    32bit),數據傳輸上RK3588更有優勢。 超強的視頻編解碼能力 編碼能力RK3588最高支持8K@30fps H.264/H.265,RK3576最高支持4K@60fps H
    發表于 12-27 11:44

    RK3588與RK3576區別解析

    ,145G FLOPS;RK3588為Mali-G610 MP4,圖形性能更強。 視頻編解碼RK3576支持 8K@30fps 解碼等;RK
    的頭像 發表于 12-17 14:03 ?1696次閱讀
    <b class='flag-5'>RK</b>3588與<b class='flag-5'>RK3576</b>區別解析

    RK3576單板發布倒計時:RK3399與RK3576對比

    好多人說RK3576RK3399的升級版,某種程度上也可以這么說,RK3576在強大的多媒體功能的基礎上,性能和接口都進行了升級 一、工藝 性能 rk3576采用 Rockchip
    的頭像 發表于 12-03 16:59 ?1220次閱讀
    <b class='flag-5'>RK3576</b>單板發布倒計時:<b class='flag-5'>RK</b>3399與<b class='flag-5'>RK3576</b>對比

    base64在前端開發中的應用

    Base64是一種編碼方法,用于將二進制數據轉換為ASCII字符串。這種編碼方式在前端開發中有著廣泛的應用,尤其是在數據傳輸和存儲方面。 1. Base64編碼的基本概念 Base64編碼是一種
    的頭像 發表于 11-10 14:24 ?1163次閱讀

    如何優化base64編碼的性能

    Base64編碼是一種廣泛使用的編碼方法,用于將二進制數據轉換為ASCII字符串。它在許多場景中非常有用,例如在電子郵件、網頁和存儲系統中傳輸二進制數據。然而,Base64編碼和解碼可能會對性能
    的頭像 發表于 11-10 14:17 ?2093次閱讀

    base64編碼和解碼的使用方法

    Base64編碼是一種廣泛使用的編碼方案,用于將二進制數據轉換為純文本格式。這種編碼方式特別適用于在不支持二進制數據的系統之間傳輸數據,例如電子郵件、網頁等。 1. Base64編碼簡介
    的頭像 發表于 11-10 10:48 ?4223次閱讀

    新品體驗 | RK3576開發板

    前言:RK3576作為瑞芯微第二代8nm高性能AIOT平臺,一經推出便獲得了極大的關注。廣州眺望電子科技有限公司是一家專注于嵌入式處理器模組研發與應用的國家高新技術企業,目前公司已推出的相關型號有
    的頭像 發表于 11-01 08:08 ?1890次閱讀
    新品體驗 | <b class='flag-5'>RK3576</b>開發板
    主站蜘蛛池模板: 在线播放你懂 | 国产香蕉98碰碰久久人人 | 韩国午夜精品理论片西瓜 | 男人日女人视频免费看 | 91大神大战丝袜美女在线观看 | 久久精品亚洲精品国产欧美 | 国产小视频免费 | 在线亚洲一区 | 男人的天堂一区二区视频在线观看 | 欧美yw193.c㎝在线观看 | 2019偷偷狠狠的日日 | 日韩三级小视频 | 成人国产精品高清在线观看 | 欧美在线观看视频一区 | 国产三级精品在线 | 特黄特级毛片免费视 | 狠狠干天天射 | 国产精品第9页 | 亚洲国产视频一区 | 狠狠色丁香婷婷综合最新地址 | 亚洲色四在线视频观看 | 久久久久国产成人精品亚洲午夜 | 一级三级黄色片 | 农村的毛片丨级 | 亚洲视频福利 | 天天爽夜夜爽夜夜爽 | 五月天婷婷亚洲 | 久久久噜噜噜 | 久久精品国产免费看久久精品 | www狠狠操| 日韩免费观看视频 | 一级免费看 | 2022年国产精品久久久久 | 5g影院天天爽 | 短篇禁伦小说 | 日本高清视频色 | 国产精品乱码高清在线观看 | 国产免费高清视频在线观看不卡 | 视频色www永久免费 视频色版 | 在线中文字幕第一页 | 一久久 |