add night drop feature

This commit is contained in:
Alfonso Gamboa 2022-06-18 05:54:19 -07:00
parent 5cd3875d25
commit 3dca5d188f
3 changed files with 39 additions and 0 deletions

Binary file not shown.

View File

@ -84,6 +84,7 @@ ENABLE_CIFS="false"
DISABLE_FW_UPGRADE="false"
AUDIO_PROMPT_VOLUME="50"
ENABLE_MP4_WRITE="false"
NIGHT_DROP_DISABLE="false"
#####DEBUG#####
#drops you to a shell via serial, doesn't load app_init.sh

View File

@ -0,0 +1,38 @@
#define _GNU_SOURCE
#include <dlfcn.h>
#include <stdio.h>
#include <unistd.h>
#include <stdint.h>
#include <fcntl.h>
static uint32_t (*real_local_sdk_video_set_fps)(int encChn);
int local_sdk_video_set_fps(int encChn) {
const char *nd_enable="/opt/wz_mini/tmp/.nd";
const char *product_T31="/opt/wz_mini/tmp/.T31";
const char *product_T20="/opt/wz_mini/tmp/.T20";
if( access( nd_enable, F_OK ) != -1 ) {
printf("[command] [night_drop.c] Night Drop Enabled\n");
if( encChn == 15 && access( product_T31, F_OK ) != -1 ) {
printf("[command] [night_drop.c] T31 detected\n");
fprintf(stderr, "[command] [night_drop.c] Night Time Requested FPS Drop Value: %d\n", encChn);
printf("[command] [night_drop.c] Night FPS Drop Stopped\n");
} else if ( encChn >= 15 && access( product_T20, F_OK ) != -1 ) {
printf("[command] [night_drop.c] T20 detected\n");
fprintf(stderr, "[command] [night_drop.c] Night Time Requested FPS Drop Value: %d\n", encChn);
printf("[command] [night_drop.c] Night FPS Drop Stopped\n");
} else {
fprintf(stderr, "[command] [night_drop.c] Requested FPS Value: %d\n", encChn);
fprintf(stderr, "[command] [night_drop.c] Calling local_sdk_video_set_fps to: %d\n", encChn);
real_local_sdk_video_set_fps(encChn);
}
}
}
static void __attribute ((constructor)) nigh_drop_init(void) {
real_local_sdk_video_set_fps = dlsym(dlopen("/system/lib/liblocalsdk.so", RTLD_LAZY), "local_sdk_video_set_fps");
}