mirror of
https://github.com/ggerganov/whisper.cpp.git
synced 2025-05-31 14:30:42 +00:00
Some checks failed
Bindings Tests (Ruby) / ubuntu-22 (push) Has been cancelled
CI / determine-tag (push) Has been cancelled
CI / ubuntu-22 (linux/amd64) (push) Has been cancelled
CI / ubuntu-22 (linux/ppc64le) (push) Has been cancelled
CI / ubuntu-22-arm64 (linux/arm64) (push) Has been cancelled
CI / ubuntu-22-arm-v7 (linux/arm/v7) (push) Has been cancelled
CI / macOS-latest (generic/platform=iOS) (push) Has been cancelled
CI / macOS-latest (generic/platform=macOS) (push) Has been cancelled
CI / macOS-latest (generic/platform=tvOS) (push) Has been cancelled
CI / ubuntu-22-gcc (linux/amd64, Debug) (push) Has been cancelled
CI / ubuntu-22-gcc (linux/amd64, Release) (push) Has been cancelled
CI / ubuntu-22-gcc (linux/ppc64le, Debug) (push) Has been cancelled
CI / ubuntu-22-gcc (linux/ppc64le, Release) (push) Has been cancelled
CI / ubuntu-22-gcc-arm64 (linux/arm64, Debug) (push) Has been cancelled
CI / ubuntu-22-gcc-arm64 (linux/arm64, Release) (push) Has been cancelled
CI / ubuntu-22-gcc-arm-v7 (linux/arm/v7, Debug) (push) Has been cancelled
CI / ubuntu-22-gcc-arm-v7 (linux/arm/v7, Release) (push) Has been cancelled
CI / ubuntu-22-clang (linux/amd64, Debug) (push) Has been cancelled
CI / ubuntu-22-clang (linux/amd64, Release) (push) Has been cancelled
CI / ubuntu-22-clang (linux/arm64, Debug) (push) Has been cancelled
CI / ubuntu-22-clang (linux/arm64, Release) (push) Has been cancelled
CI / ubuntu-22-clang (linux/ppc64le, Debug) (push) Has been cancelled
CI / ubuntu-22-clang (linux/ppc64le, Release) (push) Has been cancelled
CI / ubuntu-22-gcc-sanitized (linux/amd64, ADDRESS) (push) Has been cancelled
CI / ubuntu-22-gcc-sanitized (linux/amd64, THREAD) (push) Has been cancelled
CI / ubuntu-22-gcc-sanitized (linux/amd64, UNDEFINED) (push) Has been cancelled
CI / ubuntu-22-cmake-sycl (linux/amd64, icx, icpx, ON) (push) Has been cancelled
CI / ubuntu-22-cmake-sycl (linux/arm/v7, icx, icpx, ON) (push) Has been cancelled
CI / ubuntu-22-cmake-sycl (linux/arm64, icx, icpx, ON) (push) Has been cancelled
CI / ubuntu-22-cmake-sycl (linux/ppc64le, icx, icpx, ON) (push) Has been cancelled
CI / ubuntu-22-cmake-sycl-fp16 (linux/amd64, icx, icpx, ON) (push) Has been cancelled
CI / ubuntu-22-cmake-sycl-fp16 (linux/arm/v7, icx, icpx, ON) (push) Has been cancelled
CI / ubuntu-22-cmake-sycl-fp16 (linux/arm64, icx, icpx, ON) (push) Has been cancelled
CI / ubuntu-22-cmake-sycl-fp16 (linux/ppc64le, icx, icpx, ON) (push) Has been cancelled
CI / windows-msys2 (Release, clang-x86_64, CLANG64) (push) Has been cancelled
CI / windows-msys2 (Release, ucrt-x86_64, UCRT64) (push) Has been cancelled
CI / windows (Win32, Release, win32-x86, x86, 2.28.5, ON) (push) Has been cancelled
CI / windows (x64, Release, win32-x86-64, x64, 2.28.5, ON) (push) Has been cancelled
CI / windows-blas (Win32, ON, Release, x86, 2.28.5, ON) (push) Has been cancelled
CI / windows-blas (x64, ON, Release, x64, 2.28.5, ON) (push) Has been cancelled
CI / windows-cublas (x64, Release, ON, 11.8.0, ON, 2.28.5) (push) Has been cancelled
CI / windows-cublas (x64, Release, ON, 12.2.0, ON, 2.28.5) (push) Has been cancelled
CI / emscripten (Release) (push) Has been cancelled
CI / ios-xcode-build (Release) (push) Has been cancelled
CI / android (push) Has been cancelled
CI / android_java (push) Has been cancelled
CI / bindings-java (push) Has been cancelled
CI / quantize (push) Has been cancelled
CI / release (push) Has been cancelled
CI / coreml-base-en (push) Has been cancelled
CI / vad (push) Has been cancelled
Publish Docker image / Push Docker image to Docker Hub (map[dockerfile:.devops/main-musa.Dockerfile platform:linux/amd64 tag:main-musa]) (push) Has been cancelled
Publish Docker image / Push Docker image to Docker Hub (map[dockerfile:.devops/main.Dockerfile platform:linux/amd64 tag:main]) (push) Has been cancelled
Examples WASM / deploy-wasm-github-pages (push) Has been cancelled
* vad : add initial Voice Activity Detection (VAD) support This commit add support for Voice Activity Detection (VAD). When enabled this feature will process the audio input and detect speech segments. This information is then used to reduce the number of samples that need to be processed by whisper_full. Resolves: https://github.com/ggml-org/whisper.cpp/issues/3003 --------- Co-authored-by: Georgi Gerganov <ggerganov@gmail.com>
106 lines
3.9 KiB
CMake
106 lines
3.9 KiB
CMake
set(CMAKE_CXX_STANDARD 17)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
|
|
if (EMSCRIPTEN)
|
|
#
|
|
# test-whisper-js
|
|
|
|
set(TEST_TARGET test-whisper-js)
|
|
|
|
add_test(NAME ${TEST_TARGET}
|
|
COMMAND node test-whisper.js --experimental-wasm-threads
|
|
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
|
)
|
|
|
|
return()
|
|
endif()
|
|
|
|
set(TEST_TARGET test-whisper-cli-tiny)
|
|
add_test(NAME ${TEST_TARGET}
|
|
COMMAND $<TARGET_FILE:whisper-cli>
|
|
-m ${PROJECT_SOURCE_DIR}/models/for-tests-ggml-tiny.bin -l fr
|
|
-f ${PROJECT_SOURCE_DIR}/samples/jfk.wav)
|
|
set_tests_properties(${TEST_TARGET} PROPERTIES LABELS "tiny;gh")
|
|
|
|
set(TEST_TARGET test-whisper-cli-tiny.en)
|
|
add_test(NAME ${TEST_TARGET}
|
|
COMMAND $<TARGET_FILE:whisper-cli>
|
|
-m ${PROJECT_SOURCE_DIR}/models/for-tests-ggml-tiny.en.bin
|
|
-f ${PROJECT_SOURCE_DIR}/samples/jfk.wav)
|
|
set_tests_properties(${TEST_TARGET} PROPERTIES LABELS "tiny;en")
|
|
|
|
set(TEST_TARGET test-whisper-cli-base)
|
|
add_test(NAME ${TEST_TARGET}
|
|
COMMAND $<TARGET_FILE:whisper-cli>
|
|
-m ${PROJECT_SOURCE_DIR}/models/for-tests-ggml-base.bin -l fr
|
|
-f ${PROJECT_SOURCE_DIR}/samples/jfk.wav)
|
|
set_tests_properties(${TEST_TARGET} PROPERTIES LABELS "base")
|
|
|
|
set(TEST_TARGET test-whisper-cli-base.en)
|
|
add_test(NAME ${TEST_TARGET}
|
|
COMMAND $<TARGET_FILE:whisper-cli>
|
|
-m ${PROJECT_SOURCE_DIR}/models/for-tests-ggml-base.en.bin
|
|
-f ${PROJECT_SOURCE_DIR}/samples/jfk.wav)
|
|
set_tests_properties(${TEST_TARGET} PROPERTIES LABELS "base;en")
|
|
|
|
set(TEST_TARGET test-whisper-cli-small)
|
|
add_test(NAME ${TEST_TARGET}
|
|
COMMAND $<TARGET_FILE:whisper-cli>
|
|
-m ${PROJECT_SOURCE_DIR}/models/for-tests-ggml-small.bin -l fr
|
|
-f ${PROJECT_SOURCE_DIR}/samples/jfk.wav)
|
|
set_tests_properties(${TEST_TARGET} PROPERTIES LABELS "small")
|
|
|
|
set(TEST_TARGET test-whisper-cli-small.en)
|
|
add_test(NAME ${TEST_TARGET}
|
|
COMMAND $<TARGET_FILE:whisper-cli>
|
|
-m ${PROJECT_SOURCE_DIR}/models/for-tests-ggml-small.en.bin
|
|
-f ${PROJECT_SOURCE_DIR}/samples/jfk.wav)
|
|
set_tests_properties(${TEST_TARGET} PROPERTIES LABELS "small;en")
|
|
|
|
set(TEST_TARGET test-whisper-cli-medium)
|
|
add_test(NAME ${TEST_TARGET}
|
|
COMMAND $<TARGET_FILE:whisper-cli>
|
|
-m ${PROJECT_SOURCE_DIR}/models/for-tests-ggml-medium.bin -l fr
|
|
-f ${PROJECT_SOURCE_DIR}/samples/jfk.wav)
|
|
set_tests_properties(${TEST_TARGET} PROPERTIES LABELS "medium")
|
|
|
|
set(TEST_TARGET test-whisper-cli-medium.en)
|
|
add_test(NAME ${TEST_TARGET}
|
|
COMMAND $<TARGET_FILE:whisper-cli>
|
|
-m ${PROJECT_SOURCE_DIR}/models/for-tests-ggml-medium.en.bin
|
|
-f ${PROJECT_SOURCE_DIR}/samples/jfk.wav)
|
|
set_tests_properties(${TEST_TARGET} PROPERTIES LABELS "medium;en")
|
|
|
|
set(TEST_TARGET test-whisper-cli-large)
|
|
add_test(NAME ${TEST_TARGET}
|
|
COMMAND $<TARGET_FILE:whisper-cli>
|
|
-m ${PROJECT_SOURCE_DIR}/models/for-tests-ggml-large.bin
|
|
-f ${PROJECT_SOURCE_DIR}/samples/jfk.wav)
|
|
set_tests_properties(${TEST_TARGET} PROPERTIES LABELS "large")
|
|
|
|
if (WHISPER_FFMPEG)
|
|
set(TEST_TARGET test-whisper-cli-tiny-mp3)
|
|
# Check with reviewers: any way to check the output transcription via ctest (diff, ...)?
|
|
add_test(NAME ${TEST_TARGET}
|
|
COMMAND $<TARGET_FILE:whisper-cli>
|
|
-m ${PROJECT_SOURCE_DIR}/models/for-tests-ggml-tiny.en.bin
|
|
-f ${PROJECT_SOURCE_DIR}/samples/jfk.mp3)
|
|
set_tests_properties(${TEST_TARGET} PROPERTIES LABELS "tiny;mp3")
|
|
endif()
|
|
|
|
# VAD test tests VAD in isolation
|
|
set(VAD_TEST test-vad)
|
|
add_executable(${VAD_TEST} ${VAD_TEST}.cpp)
|
|
target_include_directories(${VAD_TEST} PRIVATE ../include ../ggml/include ../examples)
|
|
target_link_libraries(${VAD_TEST} PRIVATE common)
|
|
add_test(NAME ${VAD_TEST} COMMAND ${VAD_TEST})
|
|
set_tests_properties(${VAD_TEST} PROPERTIES LABELS "unit")
|
|
|
|
# VAD test full uses whisper_full with VAD enabled
|
|
set(VAD_TEST test-vad-full)
|
|
add_executable(${VAD_TEST} ${VAD_TEST}.cpp)
|
|
target_include_directories(${VAD_TEST} PRIVATE ../include ../ggml/include ../examples)
|
|
target_link_libraries(${VAD_TEST} PRIVATE common)
|
|
add_test(NAME ${VAD_TEST} COMMAND ${VAD_TEST})
|
|
set_tests_properties(${VAD_TARGET} PROPERTIES LABELS "base;en")
|