From d3c32177e0ce28c0e38296d564673f0b29351c68 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 15 Dec 2022 13:32:25 +0100 Subject: gnu: Add gst-vosk. * gnu/packages/speech.scm (gst-vosk): New variable. --- gnu/packages/speech.scm | 49 ++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 48 insertions(+), 1 deletion(-) (limited to 'gnu/packages/speech.scm') diff --git a/gnu/packages/speech.scm b/gnu/packages/speech.scm index 15fddd9895..d217d7ba01 100644 --- a/gnu/packages/speech.scm +++ b/gnu/packages/speech.scm @@ -4,7 +4,7 @@ ;;; Copyright © 2017 Leo Famulari ;;; Copyright © 2018, 2020–2022 Tobias Geerinckx-Rice ;;; Copyright © 2016 Kei Kebreau -;;; Copyright © 2019, 2021 Ricardo Wurmus +;;; Copyright © 2019, 2021, 2022 Ricardo Wurmus ;;; Copyright © 2020 Nicolas Goaziou ;;; Copyright © 2020 Efraim Flashner ;;; Copyright © 2021 qblade @@ -31,6 +31,7 @@ (define-module (gnu packages speech) #:use-module (guix git-download) #:use-module (guix utils) #:use-module (guix build-system gnu) + #:use-module (guix build-system meson) #:use-module (gnu packages) #:use-module (gnu packages audio) #:use-module (gnu packages autotools) @@ -44,6 +45,7 @@ (define-module (gnu packages speech) #:use-module (gnu packages glib) #:use-module (gnu packages gstreamer) #:use-module (gnu packages linux) + #:use-module (gnu packages machine-learning) #:use-module (gnu packages ncurses) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) @@ -558,6 +560,51 @@ (define-public festival control.") (license (license:non-copyleft "file://COPYING")))) +(define-public gst-vosk + (package + (name "gst-vosk") + (version "0.3.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/PhilippeRo/gst-vosk") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1zxifssh57a251af9x4ahglcipvmkgc1pmc67l59s805za9yvq3p")) + (modules '((guix build utils))) + (snippet + ;; Do not use prebuilt vosk library + '(begin + (delete-file-recursively "vosk") + (substitute* "meson.build" + (("subdir\\('vosk'\\)") "")) + (substitute* "src/meson.build" + (("vosk_libdir =.*") "") + ((", dirs : vosk_libdir") "") + (("include_directories : include_directories.*") "")) + (substitute* '("src/gstvosk.h" + "src/gstvosk.c") + (("vosk-api.h") "vosk_api.h")))))) + (build-system meson-build-system) + (arguments + (list + #:phases + '(modify-phases %standard-phases + (add-after 'unpack 'install-vosk-api-header + (lambda* (#:key inputs #:allow-other-keys) + (install-file (search-input-file inputs "src/vosk_api.h") + "src")))))) + (inputs + (list vosk-api gstreamer gobject-introspection)) + (native-inputs (list pkg-config gettext-minimal)) + (home-page "https://github.com/PhilippeRo/gst-vosk") + (synopsis "Gstreamer plugin for VOSK voice recognition engine") + (description "This package provides a Gstreamer plugin for the VOSK voice +recognition engine.") + (license license:gpl2+))) + (define-public ekho (package (name "ekho") -- cgit v1.2.3