File indexing completed on 2024-12-22 04:28:24
0001 /* 0002 SPDX-FileCopyrightText: 2023-2024 Laurent Montel <montel.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include "speechtotext/speechtotextplugin.h" 0010 class VoskSpeechToTextDevice; 0011 class VoskSpeechToTextPlugin : public TextSpeechToText::SpeechToTextPlugin 0012 { 0013 Q_OBJECT 0014 public: 0015 explicit VoskSpeechToTextPlugin(QObject *parent = nullptr); 0016 ~VoskSpeechToTextPlugin() override; 0017 0018 void speechToText() override; 0019 0020 [[nodiscard]] int sampleRate() const override; 0021 0022 [[nodiscard]] QIODevice *audioDevice() const override; 0023 0024 [[nodiscard]] bool loadSettings() override; 0025 void clear() override; 0026 0027 private: 0028 VoskSpeechToTextDevice *const mDevice; 0029 };