Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
DeepSpeech
提交
52477a10
D
DeepSpeech
项目概览
PaddlePaddle
/
DeepSpeech
大约 2 年 前同步成功
通知
210
Star
8425
Fork
1598
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
245
列表
看板
标记
里程碑
合并请求
3
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
DeepSpeech
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
245
Issue
245
列表
看板
标记
里程碑
合并请求
3
合并请求
3
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
52477a10
编写于
6月 29, 2022
作者:
H
Hui Zhang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
sox can build
上级
d63895fc
变更
9
隐藏空白更改
内联
并排
Showing
9 changed file
with
103 addition
and
81 deletion
+103
-81
CMakeLists.txt
CMakeLists.txt
+20
-3
cmake/FindGFortranLibs.cmake
cmake/FindGFortranLibs.cmake
+0
-0
cmake/external/openblas.cmake
cmake/external/openblas.cmake
+1
-0
cmake/external/pybind.cmake
cmake/external/pybind.cmake
+2
-0
cmake/summary.cmake
cmake/summary.cmake
+4
-5
paddlespeech/audio/CMakeLists.txt
paddlespeech/audio/CMakeLists.txt
+0
-37
paddlespeech/audio/third_party/CMakeLists.txt
paddlespeech/audio/third_party/CMakeLists.txt
+10
-5
paddlespeech/audio/third_party/kaldi/CMakeLists.txt
paddlespeech/audio/third_party/kaldi/CMakeLists.txt
+64
-29
tools/setup_helpers/extension.py
tools/setup_helpers/extension.py
+2
-2
未找到文件。
CMakeLists.txt
浏览文件 @
52477a10
...
...
@@ -13,8 +13,10 @@ if(NOT CMAKE_VERSION VERSION_LESS 3.15.0)
cmake_policy
(
SET CMP0092 NEW
)
endif
()
project
(
paddlespeech
)
# check and set CMAKE_CXX_STANDARD
string
(
FIND
"
${
CMAKE_CXX_FLAGS
}
"
"-std=c++"
env_cxx_standard
)
if
(
env_cxx_standard GREATER -1
)
...
...
@@ -27,23 +29,38 @@ endif()
set
(
CMAKE_CXX_STANDARD 14
)
set
(
CMAKE_C_STANDARD 11
)
set
(
CMAKE_EXPORT_COMPILE_COMMANDS ON
)
set
(
CMAKE_POSITION_INDEPENDENT_CODE ON
)
set
(
CMAKE_VERBOSE_MAKEFILE ON
)
# Options
option
(
BUILD_SOX
"Build libsox statically"
ON
)
option
(
BUILD_MAD
"Enable libmad"
ON
)
option
(
BUILD_KALDI
"Build kaldi statically"
ON
)
option
(
BUILD_PADDLEAUDIO_PYTHON_EXTENSION
"Build Python extension"
ON
)
set
(
CMAKE_MODULE_PATH
"
${
CMAKE_MODULE_PATH
}
;
${
CMAKE_CURRENT_SOURCE_DIR
}
/cmake"
)
# cmake
set
(
CMAKE_MODULE_PATH
"
${
CMAKE_MODULE_PATH
}
;
${
PROJECT_SOURCE_DIR
}
/cmake;
${
PROJECT_SOURCE_DIR
}
/cmake/external"
)
# fc_patch dir
set
(
FETCHCONTENT_QUIET off
)
get_filename_component
(
fc_patch
"fc_patch"
REALPATH BASE_DIR
"
${
CMAKE_SOURCE_DIR
}
"
)
set
(
FETCHCONTENT_BASE_DIR
${
fc_patch
}
)
include
(
openblas
)
# include(pybind)
# packages
find_package
(
Python3 COMPONENTS Interpreter Development
)
find_package
(
pybind11 CONFIG
)
message
(
STATUS
"Python_INCLUDE_DIR="
${
Python_INCLUDE_DIR
}
)
set
(
CMAKE_CXX_FLAGS
"
${
CMAKE_CXX_FLAGS
}
-pthread -fPIC -O0 -Wall -g"
)
add_subdirectory
(
paddlespeech/audio
)
# Summary
...
...
paddlespeech/audio/
cmake/FindGFortranLibs.cmake
→
cmake/FindGFortranLibs.cmake
浏览文件 @
52477a10
文件已移动
paddlespeech/audio/
cmake/external/openblas.cmake
→
cmake/external/openblas.cmake
浏览文件 @
52477a10
include
(
FetchContent
)
include
(
ExternalProject
)
set
(
OpenBLAS_SOURCE_DIR
${
fc_patch
}
/OpenBLAS-src
)
set
(
OpenBLAS_PREFIX
${
fc_patch
}
/OpenBLAS-prefix
)
...
...
paddlespeech/audio/
cmake/external/pybind.cmake
→
cmake/external/pybind.cmake
浏览文件 @
52477a10
include
(
FetchContent
)
include
(
ExternalProject
)
FetchContent_Declare
(
pybind
URL https://github.com/pybind/pybind11/archive/refs/tags/v2.9.0.zip
...
...
cmake/summary.cmake
浏览文件 @
52477a10
...
...
@@ -33,9 +33,8 @@ function (onnx_print_configuration_summary)
message
(
STATUS
" Protobuf includes :
${
PROTOBUF_INCLUDE_DIRS
}
"
)
message
(
STATUS
" Protobuf libraries :
${
PROTOBUF_LIBRARIES
}
"
)
message
(
STATUS
" BUILD_ONNX_PYTHON :
${
BUILD_ONNX_PYTHON
}
"
)
if
(
${
BUILD_ONNX_PYTHON
}
)
message
(
STATUS
" Python version :
${
PY_VERSION
}
"
)
message
(
STATUS
" Python executable :
${
PYTHON_EXECUTABLE
}
"
)
message
(
STATUS
" Python includes :
${
PYTHON_INCLUDE_DIR
}
"
)
endif
()
message
(
STATUS
" Python version :
${
Python_VERSION
}
"
)
message
(
STATUS
" Python executable :
${
Python_EXECUTABLE
}
"
)
message
(
STATUS
" Python includes :
${
Python_INCLUDE_DIRS
}
"
)
endfunction
()
\ No newline at end of file
paddlespeech/audio/CMakeLists.txt
浏览文件 @
52477a10
cmake_minimum_required
(
VERSION 3.16 FATAL_ERROR
)
project
(
paddleaudio VERSION 0.1
)
string
(
FIND
"
${
CMAKE_CXX_FLAGS
}
"
"-std=c++"
env_cxx_standard
)
# cmake dir
set
(
paddleaudio_cmake_dir
${
PROJECT_SOURCE_DIR
}
/cmake
)
# Modules
list
(
APPEND CMAKE_MODULE_PATH
${
paddleaudio_cmake_dir
}
/external
)
list
(
APPEND CMAKE_MODULE_PATH
${
paddleaudio_cmake_dir
}
)
include
(
FetchContent
)
include
(
ExternalProject
)
# fc_patch dir
set
(
FETCHCONTENT_QUIET off
)
get_filename_component
(
fc_patch
"fc_patch"
REALPATH BASE_DIR
"
${
CMAKE_SOURCE_DIR
}
"
)
set
(
FETCHCONTENT_BASE_DIR
${
fc_patch
}
)
set
(
CMAKE_CXX_FLAGS
"
${
CMAKE_CXX_FLAGS
}
-pthread -fPIC -O0 -Wall -g"
)
set
(
CMAKE_CXX_STANDARD 14
)
set
(
CMAKE_C_STANDARD 11
)
set
(
CMAKE_EXPORT_COMPILE_COMMANDS ON
)
set
(
CMAKE_POSITION_INDEPENDENT_CODE ON
)
option
(
BUILD_SOX
"Build libsox statically"
ON
)
# checkout the thirdparty/kaldi/base/kaldi-types.h
# compile kaldi without openfst
add_definitions
(
"-DCOMPILE_WITHOUT_OPENFST"
)
include
(
openblas
)
# include(pybind)
include_directories
(
${
CMAKE_CURRENT_SOURCE_DIR
}
${
CMAKE_CURRENT_SOURCE_DIR
}
/third_party/kaldi
)
include_directories
(
/usr/include/python3.7m
)
add_subdirectory
(
third_party
)
add_subdirectory
(
src
)
paddlespeech/audio/third_party/CMakeLists.txt
浏览文件 @
52477a10
set
(
CMAKE_CXX_FLAGS
"
${
CMAKE_CXX_FLAGS
}
-fvisibility=hidden"
)
################################################################################
# sox
################################################################################
if
(
BUILD_SOX
)
add_subdirectory
(
sox
)
endif
()
include_directories
(
${
CMAKE_CURRENT_SOURCE_DIR
}
${
CMAKE_CURRENT_SOURCE_DIR
}
/kaldi
)
add_subdirectory
(
kaldi
)
################################################################################
# kaldi
################################################################################
if
(
BUILD_KALDI
)
add_subdirectory
(
kaldi
)
message
(
STATUS
"Build Kaldi"
)
endif
()
\ No newline at end of file
paddlespeech/audio/third_party/kaldi/CMakeLists.txt
浏览文件 @
52477a10
project
(
kaldi
)
# checkout the thirdparty/kaldi/base/kaldi-types.h
# compile kaldi without openfst
add_definitions
(
"-DCOMPILE_WITHOUT_OPENFST"
)
add_library
(
kaldi-base
# include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/../../third_party/kaldi)
# include_directories(/usr/include/python3.7m)
set
(
INSTALL_DIR
${
CMAKE_CURRENT_SOURCE_DIR
}
)
# function (define_library name source include_dirs link_libraries compile_defs)
# add_library(${name} INTERFACE ${source})
# target_include_directories(${name} INTERFACE ${include_dirs})
# target_link_libraries(${name} INTERFACE ${link_libraries})
# target_compile_definitions(${name} INTERFACE ${compile_defs})
# set_target_properties(${name} PROPERTIES PREFIX "")
# if (MSVC)
# set_target_properties(${name} PROPERTIES SUFFIX ".pyd")
# endif(MSVC)
# install(
# TARGETS ${name}
# LIBRARY DESTINATION lib
# RUNTIME DESTINATION lib # For Windows
# )
# endfunction()
# kaldi-base
add_library
(
kaldi-base INTERFACE
base/io-funcs.cc
base/kaldi-error.cc
base/kaldi-math.cc
base/kaldi-utils.cc
base/timer.cc
)
target_include_directories
(
kaldi-base INTERFACE
${
INSTALL_DIR
}
/base
)
target_compile_definitions
(
kaldi-base INTERFACE
"-DCOMPILE_WITHOUT_OPENFST"
)
# kaldi-matrix
add_library
(
kaldi-matrix INTERFACE
matrix/compressed-matrix.cc
matrix/kaldi-matrix.cc
matrix/kaldi-vector.cc
matrix/matrix-functions.cc
matrix/optimization.cc
matrix/packed-matrix.cc
matrix/qr.cc
matrix/sparse-matrix.cc
matrix/sp-matrix.cc
matrix/srfft.cc
matrix/tp-matrix.cc
)
target_include_directories
(
kaldi-matrix INTERFACE
${
INSTALL_DIR
}
/matrix
)
target_link_libraries
(
kaldi-matrix INTERFACE gfortran kaldi-base libopenblas.a
)
add_library
(
kaldi-util
# kaldi-util
add_library
(
kaldi-util INTERFACE
util/kaldi-holder.cc
util/kaldi-io.cc
util/kaldi-semaphore.cc
...
...
@@ -19,19 +63,11 @@ add_library(kaldi-util
util/simple-options.cc
util/text-utils.cc
)
target_link_libraries
(
kaldi-util PUBLIC kaldi-base kaldi-matrix
)
add_library
(
kaldi-mfcc
feat/feature-mfcc.cc
)
target_link_libraries
(
kaldi-mfcc PUBLIC kaldi-feat-common
)
target_include_directories
(
kaldi-util INTERFACE
${
INSTALL_DIR
}
/util
)
target_link_libraries
(
kaldi-util INTERFACE kaldi-base kaldi-matrix
)
add_library
(
kaldi-fbank
feat/feature-fbank.cc
)
target_link_libraries
(
kaldi-fbank PUBLIC kaldi-feat-common
)
add_library
(
kaldi-feat-common
# kaldi-feat-common
add_library
(
kaldi-feat-common INTERFACE
feat/wave-reader.cc
feat/signal.cc
feat/feature-functions.cc
...
...
@@ -40,20 +76,19 @@ add_library(kaldi-feat-common
feat/mel-computations.cc
feat/cmvn.cc
)
target_link_libraries
(
kaldi-feat-common PUBLIC kaldi-base kaldi-matrix kaldi-util
)
target_include_directories
(
kaldi-feat-common INTERFACE
${
INSTALL_DIR
}
/feat
)
target_link_libraries
(
kaldi-feat-common INTERFACE kaldi-base kaldi-matrix kaldi-util
)
add_library
(
kaldi-matrix
matrix/compressed-matrix.cc
matrix/kaldi-matrix.cc
matrix/kaldi-vector.cc
matrix/matrix-functions.cc
matrix/optimization.cc
matrix/packed-matrix.cc
matrix/qr.cc
matrix/sparse-matrix.cc
matrix/sp-matrix.cc
matrix/srfft.cc
matrix/tp-matrix.cc
# kaldi-mfcc
add_library
(
kaldi-mfcc INTERFACE
feat/feature-mfcc.cc
)
target_link_libraries
(
kaldi-matrix gfortran kaldi-base libopenblas.a
)
target_include_directories
(
kaldi-mfcc INTERFACE
${
INSTALL_DIR
}
/feat
)
target_link_libraries
(
kaldi-mfcc INTERFACE kaldi-feat-common
)
# kaldi-fbank
add_library
(
kaldi-fbank INTERFACE
feat/feature-fbank.cc
)
target_include_directories
(
kaldi-fbank INTERFACE
${
INSTALL_DIR
}
/feat
)
target_link_libraries
(
kaldi-fbank INTERFACE kaldi-feat-common
)
\ No newline at end of file
tools/setup_helpers/extension.py
浏览文件 @
52477a10
...
...
@@ -35,7 +35,7 @@ def _get_build(var, default=False):
_BUILD_SOX
=
False
if
platform
.
system
()
==
"Windows"
else
_get_build
(
"BUILD_SOX"
,
True
)
_BUILD_MAD
=
_get_build
(
"BUILD_MAD"
,
False
)
#
_BUILD_KALDI = False if platform.system() == "Windows" else _get_build("BUILD_KALDI", True)
_BUILD_KALDI
=
False
if
platform
.
system
()
==
"Windows"
else
_get_build
(
"BUILD_KALDI"
,
True
)
# _BUILD_RNNT = _get_build("BUILD_RNNT", True)
# _BUILD_CTC_DECODER = False if platform.system() == "Windows" else _get_build("BUILD_CTC_DECODER", True)
# _USE_FFMPEG = _get_build("USE_FFMPEG", False)
...
...
@@ -88,7 +88,7 @@ class CMakeBuild(build_ext):
# f"-DCMAKE_PREFIX_PATH={torch.utils.cmake_prefix_path}",
f
"-DCMAKE_INSTALL_PREFIX=
{
extdir
}
"
,
"-DCMAKE_VERBOSE_MAKEFILE=ON"
,
f
"-DPython_INCLUDE_DIR=
{
distutils
.
sysconfig
.
get_python_inc
()
}
"
,
f
"-DPython_INCLUDE_DIR
S
=
{
distutils
.
sysconfig
.
get_python_inc
()
}
"
,
f
"-DBUILD_SOX:BOOL=
{
'ON'
if
_BUILD_SOX
else
'OFF'
}
"
,
f
"-DBUILD_MAD:BOOL=
{
'ON'
if
_BUILD_MAD
else
'OFF'
}
"
,
# f"-DBUILD_KALDI:BOOL={'ON' if _BUILD_KALDI else 'OFF'}",
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录