RV1109 相关 - housekeeper-software/tech GitHub Wiki
rkmedia启动之后,频繁的打印警告信息,大致意思就是说IPC有图像没有被及时取走,这个其实很正常,因为做人脸识别,耗时肯定超过了 IPC帧间隔。查看源码:
ptr = getenv("RKMEDIA_LOG_LEVEL");
if (ptr && strstr(ptr, "ERROR"))
rkmedia_log_level = LOG_LEVEL_ERROR;
else if (ptr && strstr(ptr, "WARN"))
rkmedia_log_level = LOG_LEVEL_WARN;
else if (ptr && strstr(ptr, "DBG"))
rkmedia_log_level = LOG_LEVEL_DBG;
else
rkmedia_log_level = LOG_LEVEL_INFO;
fprintf(stderr, "##RKMEDIA Log level: %d\n", rkmedia_log_level);
所以解决问题的方法很简单:
export RKMEDIA_LOG_LEVEL=ERROR
如果使用clion远程调试,要把这句话加到clion的 configure下的环境变量中。
一般,我们的程序放在SDCARD 的某个目录下,比如 /data目录,我们就用自己app的目录去获取磁盘信息即可,不必将分区路径写死。
bool GetDiskSpaceInfo(const base::FilePath &path,
int64_t *available_bytes,
int64_t *total_bytes) {
struct statvfs stats;
if (HANDLE_EINTR(statvfs(path.value().c_str(), &stats)) != 0)
return false;
if (available_bytes)
*available_bytes = static_cast<int64_t>(stats.f_bavail) * stats.f_frsize;
if (total_bytes)
*total_bytes = static_cast<int64_t>(stats.f_blocks) * stats.f_frsize;
return true;
}
bool GetDiskUsage(int64_t *available_bytes, int64_t *total_bytes) {
base::FilePath dir;
base::PathService::Get(base::DIR_MODULE, &dir);
return GetDiskSpaceInfo(dir, available_bytes, total_bytes);
}
export QT_QPA_FB_DRM=1
export QT_QPA_PLATFORM=linuxfb:rotation=0
export LD_LIBRARY_PATH=/data/outdoor/lib:$LD_LIBRARY_PATH
export solib-search-path=/data/outdoor/lib
export RKMEDIA_LOG_LEVEL=ERROR
cat /sys/class/thermal/thermal_zone0/temp
0~255
echo 100 > /sys/class/backlight/backlight/brightness
首先:amixer controls 查看设备
amixer cset numid=3,iface=MIXER,name='Master Playback Volume' 90