1 2 3 4 5 ··· 56 下一页
摘要: 背景 最近在用 CI130X 离在线的SDK测试串口采音(采用Opus压缩),然后用 deepSeek 写了一段 python 测试脚本; 由于采集得到的是Opus格式的数据,最后生成的文件也是 Opus 格式的文件,因此需要写一个脚本进行解码,其中用到了 opuslib 库。 一、下载opusli 阅读全文
posted @ 2025-11-03 23:25 FBshark 阅读(0) 评论(0) 推荐(0)
摘要: 怎么获取网页logo图标的URL链接 第一种方法:最常用的方法(适用于90%的站点)是,直接在访问网址首页链接后加上上/favicon.ico,例如: https://www.baidu.com/favicon.ico 第二种方法:按F12,进入开发者模式。以win11的edge浏览器为例:选择上面 阅读全文
posted @ 2025-11-01 23:56 FBshark 阅读(8) 评论(0) 推荐(0)
摘要: 案例:mp3是16k采样率,16bit深度的,那么码率不应该是32kBps吗,为什么可以选16kbps 这是一个非常好的问题,它触及了数字音频编码的核心概念:原始数据量和压缩编码之间的区别。 你的计算完全正确,但只适用于未经压缩的原始音频。 1. 你的计算:未经压缩的音频(如WAV文件) 对于一个未 阅读全文
posted @ 2025-10-31 03:16 FBshark 阅读(10) 评论(0) 推荐(0)
摘要: 链接:https://blog.csdn.net/vor234/article/details/138387195?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522dac311b95071f02fedec5ea5a048fdf6%252 阅读全文
posted @ 2025-10-29 03:08 FBshark 阅读(6) 评论(0) 推荐(0)
摘要: 首先是初始化 I2S 设备中,可能用到了缓存 //初始化 I2S 设备 INMP441 Serial.println("Setup I2S ..."); i2s_install(); i2s_setpin(); esp_err_t err = i2s_start(I2S_PORT_0); 其中的 i 阅读全文
posted @ 2025-10-29 01:19 FBshark 阅读(13) 评论(0) 推荐(0)
摘要: 这个函数通过以下几个条件来综合判定TTS播放结束: 主要判定逻辑: 1. 缓冲区数据检查 c #if NET_AUDIO_PLAY_BY_MP3 if (xStreamBufferBytesAvailable(mp3_player) == 0) // 播放完成 #elif NET_AUDIO_PLA 阅读全文
posted @ 2025-10-28 12:10 FBshark 阅读(8) 评论(0) 推荐(0)
摘要: Queue 在 FreeRTOS 中的专指 是的,在 FreeRTOS 的语境下,Queue 这个词绝大多数时候是特指“消息队列”(Message Queue)。当API函数、数据类型或文档中提到 "Queue" 时,它们指的就是这个用于任务间通信的核心机制。 但这引出了一个更深层次的问题:为什么它 阅读全文
posted @ 2025-10-28 12:04 FBshark 阅读(7) 评论(0) 推荐(0)
摘要: 实验:https://www.bilibili.com/opus/1126928057651691553 INMP441 数据手册:https://www.digikey.cn/htmldatasheets/production/1431884/0/0/1/inmp441-datasheet.htm 阅读全文
posted @ 2025-10-28 02:13 FBshark 阅读(25) 评论(0) 推荐(0)
摘要: 在C++中,const类型的变量默认具有内部链接性,因此可以安全地定义在.h文件中被多个.cpp文件包含。 基本用法 cpp 复制 下载 // constants.h const int MAX_SIZE = 100; const double PI = 3.14159; const std::st 阅读全文
posted @ 2025-10-28 01:49 FBshark 阅读(16) 评论(0) 推荐(0)
摘要: 一、Base64的编码规则 Base64编码的核心目标是将二进制数据转换成由64个可打印ASCII字符组成的文本。 这64个字符是: 26个大写字母: A-Z 26个小写字母: a-z 10个数字: 0-9 2个符号: + 和 / 填充符: = (用于末尾填充,不属于64个字符之内) 编码步骤如下: 阅读全文
posted @ 2025-10-28 01:34 FBshark 阅读(11) 评论(0) 推荐(0)
摘要: 接口要求 集成语音听写流式API时,需按照以下要求。 内容 说明 请求协议 ws[s](为提高安全性,强烈推荐wss) 请求地址 中英文(推荐使用):ws[s]: //iat-api.xfyun.cn/v2/iat中英文:ws[s]: //ws-api.xfyun.cn/v2/iat (上面这两有啥 阅读全文
posted @ 2025-10-27 23:57 FBshark 阅读(19) 评论(0) 推荐(0)
摘要: 【ESP32S3接入讯飞在线语音识别】 1. 前言 1.1 步骤概括 1.2 硬件介绍 1.3 接线 2. 操作流程 2.1 创建语音识别应用 2.2 记录API秘钥 3. JSON语音接入api 3.1 JSON格式 3.2 交互流程 3.2 ESP32S3 Sense接入代码 1. 核心功能 2 阅读全文
posted @ 2025-10-27 23:12 FBshark 阅读(42) 评论(0) 推荐(0)
摘要: 在各种大模型的API文档中,经常会用到 curl 工具,那么——如何运行 curl 脚本呢? 在Linux平台 对于复杂的代码,建议创建脚本文件: # 创建脚本文件 nano myscript.sh 然后执行以下指令 # 在文件中粘贴代码,然后保存退出 chmod +x myscript.sh # 阅读全文
posted @ 2025-10-27 20:06 FBshark 阅读(12) 评论(0) 推荐(0)
摘要: #if VOICE_PLAY_BY_UART /**************** * 播报器参数初始化 * * * * **/ void audio_player_param_init() { outside_init_stream(&mp3_player, &mp3_player_end, IOT 阅读全文
posted @ 2025-10-27 00:09 FBshark 阅读(5) 评论(0) 推荐(0)
摘要: FreeRTOS StreamBuffer 详解 概述 StreamBuffer(流缓冲区)是 FreeRTOS 提供的一种轻量级数据流传输机制,用于在任务间或中断与任务间高效传输字节流数据。 基本特性 1. 数据结构 字节流存储: 以 FIFO 方式存储字节数据 单读写者: 设计为单生产者单消费者 阅读全文
posted @ 2025-10-27 00:04 FBshark 阅读(12) 评论(0) 推荐(0)
1 2 3 4 5 ··· 56 下一页