This repository has no description
1.7 kB
62 lines
1{
2 lib,
3 python3Packages,
4 fetchurl,
5 stdenv,
6}:
7let
8 version = "0.3.44";
9
10 # Platform-specific wheels
11 wheels = {
12 "x86_64-linux" = {
13 url = "https://files.pythonhosted.org/packages/py3/v/vosk/vosk-${version}-py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.whl";
14 hash = "sha256-JlLvITxMeAfcQK8eeqV43Mz8TcQZKCKia8RalZG8v3Y=";
15 };
16 "aarch64-linux" = {
17 url = "https://files.pythonhosted.org/packages/py3/v/vosk/vosk-${version}-py3-none-manylinux2014_aarch64.whl";
18 hash = "sha256-mZW3+lQ0sTS0vQmJfiSQ28VhFcKtKUPAMGIeEMcDezQ=";
19 };
20 "x86_64-darwin" = {
21 url = "https://files.pythonhosted.org/packages/py3/v/vosk/vosk-${version}-py3-none-macosx_10_6_universal2.whl";
22 hash = "sha256-Ap0LPWpc/4dMV1uKWBSkzM+zdgjP9S6EbAKoxnqIKAE=";
23 };
24 "aarch64-darwin" = {
25 url = "https://files.pythonhosted.org/packages/py3/v/vosk/vosk-${version}-py3-none-macosx_10_6_universal2.whl";
26 hash = "sha256-Ap0LPWpc/4dMV1uKWBSkzM+zdgjP9S6EbAKoxnqIKAE=";
27 };
28 };
29
30 wheel =
31 wheels.${stdenv.hostPlatform.system}
32 or (throw "Unsupported platform: ${stdenv.hostPlatform.system}");
33in
34python3Packages.buildPythonPackage {
35 pname = "vosk";
36 inherit version;
37 format = "wheel";
38
39 src = fetchurl {
40 inherit (wheel) url hash;
41 };
42
43 dependencies = with python3Packages; [
44 cffi
45 requests
46 tqdm
47 srt
48 websockets
49 ];
50
51 # Skip tests as they require audio files and models
52 doCheck = false;
53
54 pythonImportsCheck = [ "vosk" ];
55
56 meta = {
57 description = "Offline speech recognition API based on Kaldi and Vosk";
58 homepage = "https://alphacephei.com/vosk/";
59 license = lib.licenses.asl20;
60 platforms = lib.attrNames wheels;
61 };
62}