HY-2012's picture
Upload ASR and TTS models
a37072b verified
Raw History Blame Contribute Delete
2.68 kB
cmake_minimum_required(VERSION 3.16)
project(zipvoice_axera_resident_server C CXX)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
# ---- Paths ----
set(ZIPVOICE_SRC "${CMAKE_CURRENT_SOURCE_DIR}/../models/zipvoice/cpp")
set(BSP_MSP_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../TTS/ZipVoice.AXERA/cpp/ax650n_bsp_sdk/msp/out")
if(NOT EXISTS "${BSP_MSP_DIR}")
message(FATAL_ERROR "BSP not found: ${BSP_MSP_DIR}. Run download_bsp.sh first.")
endif()
set(MSP_INC_DIR ${BSP_MSP_DIR}/include)
set(MSP_LIB_DIR ${BSP_MSP_DIR}/lib)
# ---- Sources ----
add_library(zipvoice_axera SHARED
zipvoice_c_api.cpp
zipvoice_resident_server.cpp
${ZIPVOICE_SRC}/src/tokenizer.cpp
${ZIPVOICE_SRC}/src/fbank.cpp
${ZIPVOICE_SRC}/src/zipvoice_engine.cpp
${ZIPVOICE_SRC}/src/vocoder.cpp
${ZIPVOICE_SRC}/src/EngineWrapper.cpp
${ZIPVOICE_SRC}/third_party/kissfft/kiss_fft.c
)
add_executable(zipvoice_axera_server
main.cpp
zipvoice_resident_server.cpp
${ZIPVOICE_SRC}/src/tokenizer.cpp
${ZIPVOICE_SRC}/src/fbank.cpp
${ZIPVOICE_SRC}/src/zipvoice_engine.cpp
${ZIPVOICE_SRC}/src/vocoder.cpp
${ZIPVOICE_SRC}/src/EngineWrapper.cpp
${ZIPVOICE_SRC}/third_party/kissfft/kiss_fft.c
)
# ---- Includes ----
target_include_directories(zipvoice_axera PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}
${ZIPVOICE_SRC}
${ZIPVOICE_SRC}/src
${ZIPVOICE_SRC}/utils
${ZIPVOICE_SRC}/third_party/kissfft
${MSP_INC_DIR}
)
target_include_directories(zipvoice_axera_server PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}
${ZIPVOICE_SRC}
${ZIPVOICE_SRC}/src
${ZIPVOICE_SRC}/utils
${ZIPVOICE_SRC}/third_party/kissfft
${MSP_INC_DIR}
)
# ---- Link ----
# Use target_link_directories (CMake >= 3.13) for cross-compilation compat
# onnxruntime is a transitive dep of ax_engine; ship it from the models/ lib dir
set(ORT_LIB_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../models/melotts_sherpa/build/lib")
target_link_directories(zipvoice_axera PRIVATE ${MSP_LIB_DIR} ${ORT_LIB_DIR})
target_link_directories(zipvoice_axera_server PRIVATE ${MSP_LIB_DIR} ${ORT_LIB_DIR})
target_link_libraries(zipvoice_axera PRIVATE
ax_sys
ax_engine
ax_interpreter
onnxruntime
pthread
dl
m
stdc++
)
target_link_libraries(zipvoice_axera_server PRIVATE
ax_sys
ax_engine
ax_interpreter
onnxruntime
pthread
dl
m
stdc++
)
set_target_properties(zipvoice_axera PROPERTIES
INSTALL_RPATH "$ORIGIN/../lib"
)
set_target_properties(zipvoice_axera_server PROPERTIES
INSTALL_RPATH "$ORIGIN/../lib"
)
install(TARGETS zipvoice_axera DESTINATION lib)
install(TARGETS zipvoice_axera_server DESTINATION bin)