- 博客(69)
- 收藏
- 关注
原创 记一次IOT显示屏控制无效
问题分析:Anr是应用没有响应导致的,进一步分析,通过adb pull /data/anr获取到anr记录的日志文件,然后查看main线程的报错堆栈,发现是关闭摄像头超时导致的anr,查看代码在拔插USB,或者开app等操作都有可能触发。原因猜想:判断可能是系统繁忙的时候正好做了拔插USB的操作,或者是屏幕长时间运行散热不对导致的平台开启降频措施,最终引发这样的问题。问题解决:首先查看app状态,发现App已经Anr,点击关闭应用,重启后恢复正常。
2025-11-28 17:40:31
450
原创 记一次mp4视频播放没有声音
考虑到客户那里千变万化的视频格式,我还是启用了业界格式支持率最高,vlc播放器,替换vlc sdk后声音马上出来了,问题解决。播放mp4在线视频,没有声音。
2025-11-28 17:39:59
370
原创 I2C入门
I2C总线是Philips公司在八十年代初推出的一种串行半双工的总线主要用于近距离、低速的芯片之间的通信I2C总线是一种多主机总线,连接在 I2C总线上的器件分为主机和从机主机有权发起和结束一次通信,从机只能被动呼叫;每个连接到I2C总线上的器件都有一个唯一的地址(7bit),且每个器件都可以作为主机也可以作为从机(但同一时刻只能有一个主机)I2C总线在通信时总线上发送数据的器件为发送器,接收数据的器件为接收器。
2025-11-27 09:20:58
913
原创 MQTT基础20251126
1:代表,Sender 发送的一条消息,Receiver 至少能收到一次,也就是说 Sender 向 Receiver 发送消息,如果发送失败,会继续重试,直到 Receiver 收到消息为止,但是因为重传的原因,Receiver 有可能会收到重复的消息。0:代表,Sender 发送的一条消息,Receiver 最多能收到一次,也就是说 Sender 尽力向 Receiver 发送消息,如果发送失败,也就算了。轻量级协议:MQTT是一种精简的协议,有效地减少了通信开销,适合于带宽有限的网络。
2025-11-26 16:41:27
290
原创 嵌入式基础20251126
所以最常用的就是半导体厂商或者开发板厂商的uboot,如果你用的半导体厂商的评估板,那么就使用半导体厂商的uboot,如果你是购买的第三方开发板,比如正点原子的I.MX6ULL开发板,那么就使用正点原子提供的uboot源码(也是在半导体厂商的uboot上修改的)。在Linux操作系统中一切皆文件,设备访问也是通过文件的方式来进行的,对于用来进行设备访问的文件称之为设备节点,设备节点被创建在/dev目录下,将内核中注册的设备与用户层进行链接,这样应用程序才能对设备进行访问。
2025-11-26 16:40:57
426
原创 计算机基础20251126
声压的单位是帕斯卡,Pa,声压的参考值是20μPa,这个值表示人耳在1000Hz处的平均可听阈值,或者是人耳在1000Hz处可被感知的平均最小声压波动值。人耳可听的声压幅值波动范围为2×10^-5Pa~20Pa,用幅值dB表示对应的分贝数为0~120dB,因此,当用分贝表示声压级的大小时,表征起来更为方便。LAN和WLAN是对内的接口,内部的电脑、手机、PAD,都是接入到LAN或者WLAN。在UTF-8编码中,一个英文字母字符存储需要1个字节,一个汉字字符储存需要3到4个字节。显示模式下,它将直接显示为。
2025-11-26 16:38:56
342
原创 网络基础20251126
DHCP(Dynamic Host Configuration Protocol)是一种网络管理协议,中文含义为“动态主机配置协议”,通常被应用在大型的局域网络环境中。集中管理、分配IP地址,使网络环境中的主机动态的获得IP地址、Gateway地址、DNS服务器地址等信息,使用DHCP配置可以让我们的工作更加轻松。电脑ping安卓机网络通过,安卓机ping电脑如网络不通,可能是电脑防火墙设置,关闭电脑防火墙,杀毒软件。安卓机,电脑(服务端),路由器(H3c),Ap(热点)电脑ping安卓机,同理。
2025-11-26 16:37:38
369
原创 鸿蒙20251126
模型:从API 9开始新增的模型,是目前主推且会长期演进的模型。在该模型中,由于提供了AbilityStage、WindowStage等类作为应用组件和Window窗口的“舞台”,因此称这种应用模型为Stage模型。在shell命令行中,执行ps -p <pid> -T命令,可以查看指定应用进程的线程信息。读连接会动态扩充,无可用读连接时,会创建新的读连接执行读操作。写连接不会动态扩充,无可用写连接时,会等待连接释放后执行写操作。在shell命令行中,执行ps -ef命令,可以查看所有正在运行的进程信息。
2025-11-26 16:34:44
214
原创 安卓设备温控,高温变卡,用久了变卡的原因by deep
在高电流和高温下,流动的电子会像河流冲刷河岸一样,逐渐将构成电路的金属原子“踢”离原位。这是一个不可逆的物理损伤过程,一旦发生,CPU就会永久损坏或变得不稳定。热失控风险:温度升高会导致晶体管的电阻增大,为了维持同样的性能,就需要更大的电流,而更大的电流又会产生更多的热量,形成恶性循环。每一次数据的写入和删除,都会对存储单元造成微小的、不可逆的物理损耗。后果:老化的电池或高温下的电池,无法提供处理器峰值性能所需的瞬时大电流。当温度升高时,硅材料的原子运动加剧,会导致电子更容易“泄漏”穿过本应关闭的晶体管,
2025-10-14 09:29:07
446
原创 记录一次解决卫星电视遥控板按钮概率失灵
通过逻辑分析仪接KingSt VIS软件抓取红外码波形,分析发现部分红外的脉宽明显高于560us(硬件要求的指标),猜测可能是CPU占用过高引起。验证将cpu占用过高的app关掉,抓取红外码出错率从10/30,降低到了2/30,验证有效但是解决方法不彻底。4.4 解决方案,将读取GPIO口数值的方法改为读取一次线程sleep 20ms,CPU使用率降低到了70%4.3查看代码,发现有常驻任务读取GPIO口数值用于旋钮调音,屏蔽后CPU使用率一下降低到了10%左右。查看程序 ps -A | grep ir_
2025-09-25 13:46:02
330
原创 rockchip温控及cpu降频配置
设备树源码文件,硬件的相应信息都会写在.dts为后缀的文件中,每一款硬件可以单独写一份xxxx.dts。对于一些相同的dts配置可以抽象到dtsi文件中,然后可以用include的方式到dts文件中。同一芯片可以做一个dtsi,不同的板子不同的dts,然后include同一dtsi。对于同一个节点的设置情况,dts中的配置会覆盖dtsi中的配置。转换为频率,从而达到根据温度限制频率的效果。微分)控制,根据当前温度,动态给各。是否需要降频,降到什么程度。温控配置都是在DTS文件中配置.
2025-08-29 16:21:15
236
原创 rk3568抓图推流卡顿延时优化实践0724
RK3568平台直接支持Yuv数据直接编码,不需要转nv12,取图耗时同等条件下由20~60之间波动降低到了12ms,大大减轻了CPU的使用,长时间测试的卡顿和延时等问题减轻了很多。Pts时间是用于渲染显示帧的时间,不同的pts时间会影响播放的画面流畅,跳动。根据实际情况看pts时间的计算时的波动,动态选择使用pts时间,可以让画面的流程跳动减少。实测长时间的跑,存在的延时问题,卡顿问题消失,app被kill(广播无法送达)问题没有复现。实测入帧帧率60/s的情况下,出帧帧率从43/s提升到了71/s。
2025-07-24 09:05:44
559
原创 rk3568平台记录一次推流卡顿分析过程
3.判断是cpu资源消耗过大引起,camera通过hmdi取图帧率是60帧。验证,隔一帧取一帧后,帧率维持在25帧~30帧。->通过hdmi输入pad的视频信号,It6911转视频到camera出图。取图+转nv12+叠图+编码推流 +window,vlc拉流 30帧。问题:在推流中发现出图帧率会下降到17帧左右,出现卡顿。->nv12数据送入mediacocec编码。取图+转nv12+叠图+编码推流 34帧。不推流只取图+转nv12+叠图 46帧。取pad+取摄像头转nv12 50帧。
2025-07-22 17:01:01
264
原创 记一次推流停止问题分析过程
推流流程:camera2 通过Imagereader取流,转成nv12格式图像数据,送入mediacodec编码,编码完成后,送入rtspserver进行推流操作,在通过vlc客户端拉流。测试15H没有出现断流,问题出在全功能数据线,信号不稳定导致的6911读取视频信号失败,导致camera取流停止,推流停止。2.怀疑散热导致,抓取温度传感器,确实soc达到高温73度,加外置风扇前后,降温到了57度。问题 :Rk3568实现rtsp推流,概率出现推流停止。[16:41:24.272]收←◆。
2025-07-18 14:18:37
311
原创 iperf工具使用常用参数0711
android上连接测试网速 -c 后面是服务端ip,-i 是间隔时间单位S,-t测试时间单位秒,-b是带宽,-l是发送数据包缓冲区大小。-l, --len #[KMG],读写缓冲区的长度,TCP 默认为 128K,UDP 默认为 8K;-c, --client ,以 Client 模式运行,并指定 Server 端的地址;-t, --time #,以时间为测试结束条件进行测试,默认为 10 秒;-i, --interval #,每次报告的间隔,单位为秒;-u, --udp,以 UDP 协议进行测试;
2025-07-11 13:55:30
498
原创 android系统资源查看0711
与ondemand不同,平滑地调整CPU频率,频率的升降是渐变式的,会自动在频率上下限调整,和ondemand的区别 在于它会按需分配频率,而不是一味追求最高频率;按需快速动态调整CPU频率, 一有cpu计算量的任务,就会立即达到最大频率运行,等执行完毕就立即回到最低频率;将CPU频率设置为最低的所谓“省电”模式,CPU会固定工作在其支持的最低运行频率上。顾名思义只注重效率,将CPU频率固定工作在其支持的最高运行频率上,而不动态调节。交互模式,直接上最高频率,然后看CPU负荷慢慢降低,比较耗电。
2025-07-10 17:45:27
394
原创 物联网和互联网的区别by deep
**对比维度** | **互联网** | **物联网** || **特性** | **互联网** | **物联网** || **数据特性** | 大流量、非实时性(如视频、网页) | 小数据包、高频、实时(如温度读数) |
2025-07-08 09:50:38
1342
原创 v4l2常见操作-查看当前摄像头信息,帧率,控制参数,分辨率,支持格式,抓图实践等
-set-fmt-video=width=1920,height=1080,pixelformat='BGR3' \ 表示抓取宽高及图像格式。--stream-to=/data/BGR3_img.yuv 表示保存到哪里。例如以下摄像头支持的video捕获分辨率为3840*2160。--stream-count=5 表示一次抓取5帧。注意需要根据实际支持的情况,设置宽高,及图像格式。--stream-skip=30 表示跳过多少帧。设置好图像格式及分辨率,不然图像是花屏的。会生成对应的图像文件。
2025-06-03 17:38:12
1361
原创 实时超清直播延时分析及优化策略
编码用同步方式编码估算为43帧/s,约等于23ms/帧。实测在RK3568平台转换一帧1080P的视频数据,从image转换到nv12数据需要耗时20ms(java)/帧。优化:改为(native)方式转换,耗时降低至12ms/帧。4.2使用ffmpeg可以设置为udp无缓存低延时拉流播放。RTSP over UDP:更低延迟(但易受丢包影响)。局域网内很低,在50ms以内(deepseek)优化:改为异步编码可提升到100帧/S。4.1在播放器可以设置为UDP播放。优化:可以通过设置客户端缓冲。
2025-05-29 09:35:37
514
原创 RK常见系统属性设置/获取命令使用
dos.writeBytes("echo 200 > /sys/class/backlight/backlight/brightness" + "\n") // 2、向进程内写入shell指令,cmd为要执行的shell命令字符串。// 如 "00:11:22:33:44:55"val ps = Runtime.getRuntime().exec("su") //1、执行su切换到root权限。
2025-05-23 16:02:04
268
原创 Wireshark 抓包工具使用
5.点击查看抓包数据,过滤。最好用发送端ip过滤,server端ip经过路由转网后不准确。4.手机发起网络请求,工具上选择WLAN。3.电脑设置热点,手机连接热点。
2025-05-21 09:39:04
545
原创 Rk3568平台通过Jni读取摄像头当前状态值实践案例
define V4L2_CID_AUTO_WHITE_BALANCE (V4L2_CID_BASE + 12) // 白平衡。//fd为/dev/video0的文件句柄。#define V4L2_CID_SATURATION (V4L2_CID_BASE + 2) // 相机饱和度。#define V4L2_CID_BRIGHTNESS (V4L2_CID_BASE + 0) // 相机亮度。#define V4L2_CID_CONTRAST (V4L2_CID_BASE + 1) // 相机对比度。
2025-04-24 11:46:18
905
原创 RK3588平台用v4l工具调试USB摄像头实践(亮度,饱和度,对比度,色相等)
v4l-utils工具是由Linuxtv维护的一个V4L2开发套件,它提供一系列V4L2及media framework相关的工具,用来配置V4L2子设备的属性,测试V4L2设备,并提供如libv4l2.so开发库等等。Cmd示例:v4l2-ctl -d /dev/video21 --set-ctrl 'brightness=64':用以配置v4l2 controls,可抓帧,设置vin、isp、sensor参数。
2025-04-22 09:35:00
2165
原创 手机成像的基本流程
CMOS或CCD传感器将光信号转换为电信号,输出的RAW数据通常采用Bayer模式(RGGB或其他排列)ISP通过硬件加速或软件算法逐步处理RAW数据,可以获得更优质的图像数据。使用量化表压缩高频信息(牺牲部分质量),可以实现20%或者更低的存储空间占用。五:添加文件信息并保存为JPEG格式文件。二:图像信号处理(ISP)流水线。添加文件头(SOI/EOI)、一:感光元件获取原始数据。色彩配置(如sRGB)元数据(Exif)、
2025-04-11 10:51:42
724
原创 adb常用命令20250925
创建文件夹,挂载dvd光驱,从/dev/block/sr0 挂载到/sdcard/cdrom。查看当前app及栈顶activity。adb pull 安装好的apk。查看当前资源使用情况。
2025-04-08 11:44:03
250
原创 RK平台视频硬解码支持能力,格式,性能,支持解码路数计算方式等
平台硬解码能力由搭载的IP核决定。一个平台可以搭载多个IP核。粗略估计3588平台上1秒可以解码100~300帧4K视频。
2025-03-25 10:50:38
312
原创 RK3588 开发板连接电脑时,文件传输模式确认 by deepseek
使用 Type-C 数据线将 RK3588 开发板连接到 Windows 电脑。右键点击“此电脑”或“我的电脑”,选择“管理”,然后点击“设备管理器”。,点击后可以看到设备的内部存储和 SD 卡(如果有)。(类似于 U 盘),可以直接访问存储设备中的文件。连接,设备管理器中会显示一个。连接,设备管理器中会显示一个。,类似于插入 U 盘时的显示。如果 RK3588 以。如果 RK3588 以。,并列出设备的型号(如。如果 RK3588 以。连接,它会显示为一个。如果 RK3588 以。连接,它会显示为一个。
2025-03-21 10:52:07
695
原创 windows通过type-c拷贝文件到rk3588的文件丢失分析by deepseek
通过 Type-C 数据线将 RK3588 连接到 Windows 电脑复制文件时,文件的写入机制与直接在 RK3588 上操作类似,都会经过缓存机制。为了确保数据的可靠性,需要注意以下几点:在 Windows 端正确弹出设备。在 RK3588 端调用sync命令。确保 Type-C 数据线连接稳定。通过以上措施,可以有效避免文件复制过程中数据丢失的问题。
2025-03-21 10:19:43
480
原创 android文件写入的缓存机制by deepseek
在Android(以及Linux系统)中,文件写入操作通常会经过,以提高性能。这个过程涉及多个层次,包括和。
2025-03-21 09:39:57
566
原创 脚本执行adb shell命令后在执行一个命令,如adb shell ls
在clock.txt里写入需要执行的命令,如。新建一个.bat文件,内容如下。
2025-03-18 14:12:47
186
原创 [RK3588 Android12]设置系统默认不休眠(不自动熄灭屏幕)
修改device/rockchip/rk3588/设置的值0x7fffffff =
2025-02-27 11:27:26
528
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅