CuteLogger
Fast and simple logging solution for Qt based applications
src
jobs
whisperjob.h
1
/*
2
* Copyright (c) 2024 Meltytech, LLC
3
*
4
* This program is free software: you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License as published by
6
* the Free Software Foundation, either version 3 of the License, or
7
* (at your option) any later version.
8
*
9
* This program is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
* GNU General Public License for more details.
13
*
14
* You should have received a copy of the GNU General Public License
15
* along with this program. If not, see <http://www.gnu.org/licenses/>.
16
*/
17
18
#ifndef WHISPERJOB_H
19
#define WHISPERJOB_H
20
21
#include "abstractjob.h"
22
23
#include <QTemporaryFile>
24
25
class
WhisperJob :
public
AbstractJob
26
{
27
Q_OBJECT
28
public
:
29
WhisperJob(
const
QString &name,
30
const
QString &iWavFile,
31
const
QString &oSrtFile,
32
const
QString &lang,
33
bool
translate,
34
int
maxLength,
35
bool
useGpu =
true
,
36
QThread::Priority priority = Settings.jobPriority());
37
virtual
~WhisperJob();
38
39
public
slots:
40
void
start();
41
void
onViewSrtTriggered();
42
43
protected
slots:
44
void
onReadyRead();
45
void
onFinished(
int
exitCode, QProcess::ExitStatus exitStatus)
override
;
46
47
private
:
48
const
QString m_iWavFile;
49
const
QString m_oSrtFile;
50
const
QString m_lang;
51
const
bool
m_translate;
52
const
int
m_maxLength;
53
const
bool
m_useGpu;
54
bool
m_retryingWithoutGpu;
55
int
m_previousPercent;
56
};
57
58
#endif
// WHISPERJOB_H
Generated on
for CuteLogger by
1.16.1