IR decoder 1.5.1

1. fixed potential memory leak issue for ac frame parsing algorithm
2. changed decode API, embedded 'change_wind_direction' into ac_status (not compatible with lower versions)
3. changed CMakeLists.txt
This commit is contained in:
strawmanbobi
2026-01-05 12:25:53 +08:00
parent c49c09879f
commit 9b5fae523a
40 changed files with 330 additions and 178 deletions

View File

@@ -3,9 +3,6 @@ cmake_minimum_required(VERSION 3.10)
########################################################
project(irdecode)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
add_definitions(-DBOARD_PC)
# add_definitions(-DBOARD_PC_JNI)
# add_definitions(-DDEBUG)
IF (CMAKE_SYSTEM_NAME MATCHES "Linux")
MESSAGE("compile platform : Linux")
@@ -18,7 +15,10 @@ ELSE ()
add_definitions(-DPLATFORM_WIN32)
ENDIF ()
set(SOURCE_FILES_EXECUTABLE
include_directories(
"src/include")
set(LIB_IRDECODE_SRC
src/ir_utils.c
src/ir_tv_control.c
src/ir_ac_apply.c
@@ -31,29 +31,7 @@ set(SOURCE_FILES_EXECUTABLE
src/ir_decode.c
src/ir_decode_test.c)
set(SOURCE_FILES_LIB
src/ir_utils.c
src/ir_tv_control.c
src/ir_ac_apply.c
src/ir_ac_build_frame.c
src/ir_ac_parse_parameter.c
src/ir_ac_parse_forbidden_info.c
src/ir_ac_parse_frame_info.c
src/ir_ac_control.c
src/ir_ac_binary_parse.c
src/ir_decode.c)
set(SOURCE_FILES_JNI_SHARED_LIB
jni/src/ir_decode_jni.c
src/ir_utils.c
src/ir_tv_control.c
src/ir_ac_apply.c
src/ir_ac_build_frame.c
src/ir_ac_parse_parameter.c
src/ir_ac_parse_forbidden_info.c
src/ir_ac_parse_frame_info.c
src/ir_ac_control.c
src/ir_ac_binary_parse.c
set(BIN_TEST_SRC
src/ir_decode.c)
# SET(CMAKE_SYSTEM_NAME Linux)
@@ -73,7 +51,25 @@ set(SOURCE_FILES_JNI_SHARED_LIB
# SET(CMAKE_CXX_COMPILER "/usr/bin/aarch64-linux-gnu-g++")
# SET(CMAKE_FIND_ROOT_PATH "/usr/bin")
# add_library(irdecode SHARED ${SOURCE_FILES_LIB})
# add_library(irdecode STATIC ${SOURCE_FILES_LIB})
add_executable(irdecode ${SOURCE_FILES_EXECUTABLE})
# add_library(irdecode SHARED ${SOURCE_FILES_JNI_SHARED_LIB})
add_library(irdecode SHARED
${LIB_IRDECODE_SRC})
target_compile_options(irdecode PRIVATE
-DBOARD_PC)
add_library(irdecode_s STATIC
${LIB_IRDECODE_SRC})
target_compile_options(irdecode_s PRIVATE
-DBOARD_PC)
target_compile_options(irdecode_s PRIVATE
-fPIC)
add_executable(irdecode_test
${BIN_TEST_SRC})
target_link_libraries(irdecode_test PRIVATE
irdecode)
add_subdirectory("src/jni")