Jellyfin Qt
QML Library for interacting with the Jellyfin multimedia server
Loading...
Searching...
No Matches
trickplayoptions.h
Go to the documentation of this file.
1/*
2 * Sailfin: a Jellyfin client written using Qt
3 * Copyright (C) 2021 Chris Josten and the Sailfin Contributors.
4 *
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public
7 * License as published by the Free Software Foundation; either
8 * version 2.1 of the License, or (at your option) any later version.
9 *
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this library; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18 */
19/*
20 * WARNING: THIS IS AN AUTOMATICALLY GENERATED FILE! PLEASE DO NOT EDIT THIS, AS YOUR EDITS WILL GET
21 * OVERWRITTEN AT SOME POINT!
22 *
23 * If there is a bug in this file, please fix the code generator used to generate this file found in
24 * core/openapigenerator.d.
25 *
26 * This file is generated based on Jellyfin's OpenAPI description, "openapi.json". Please update that
27 * file with a newer file if needed instead of manually updating the files.
28 */
29
30#ifndef JELLYFIN_DTO_TRICKPLAYOPTIONS_H
31#define JELLYFIN_DTO_TRICKPLAYOPTIONS_H
32
33#include <QJsonObject>
34#include <QJsonValue>
35#include <QList>
36#include <QStringList>
37#include <optional>
38
42
43namespace Jellyfin {
44// Forward declaration
45class ApiClient;
46}
47namespace Jellyfin {
48namespace DTO {
49
50
52public:
55 bool enableHwEncoding,
59 qint32 interval,
61 qint32 tileWidth,
62 qint32 tileHeight,
63 qint32 qscale,
64 qint32 jpegQuality,
65 qint32 processThreads
66 );
67
69
73 void replaceData(TrickplayOptions &other);
74
75 static TrickplayOptions fromJson(QJsonObject source);
76 void setFromJson(QJsonObject source);
77 QJsonObject toJson() const;
78
79 // Properties
83 bool enableHwAcceleration() const;
87 void setEnableHwAcceleration(bool newEnableHwAcceleration);
88
92 bool enableHwEncoding() const;
96 void setEnableHwEncoding(bool newEnableHwEncoding);
97
102 bool enableKeyFrameOnlyExtraction() const;
107 void setEnableKeyFrameOnlyExtraction(bool newEnableKeyFrameOnlyExtraction);
108
109
111
112 void setScanBehavior(TrickplayScanBehavior newScanBehavior);
113
114
116
117 void setProcessPriority(ProcessPriorityClass newProcessPriority);
118
122 qint32 interval() const;
126 void setInterval(qint32 newInterval);
127
135 void setWidthResolutions(QList<qint32> newWidthResolutions);
136
140 qint32 tileWidth() const;
144 void setTileWidth(qint32 newTileWidth);
145
149 qint32 tileHeight() const;
153 void setTileHeight(qint32 newTileHeight);
154
158 qint32 qscale() const;
162 void setQscale(qint32 newQscale);
163
167 qint32 jpegQuality() const;
171 void setJpegQuality(qint32 newJpegQuality);
172
176 qint32 processThreads() const;
180 void setProcessThreads(qint32 newProcessThreads);
181
182
183protected:
193 qint32 m_qscale;
196
197private:
198 // Private constructor which generates an invalid object, for use withing TrickplayOptions::fromJson();
200};
201
202
203} // NS DTO
204
205namespace Support {
206
208
209template <>
211
212template<>
214
215} // NS DTO
216} // NS Jellyfin
217
218#endif // JELLYFIN_DTO_TRICKPLAYOPTIONS_H
An Api client for Jellyfin. Handles requests and authentication.
Definition apiclient.h:90
Definition trickplayoptions.h:51
ProcessPriorityClass m_processPriority
Definition trickplayoptions.h:188
qint32 interval() const
Gets or sets the interval, in ms, between each new trickplay image.
Definition trickplayoptions.cpp:167
void setFromJson(QJsonObject source)
Definition trickplayoptions.cpp:103
bool enableHwAcceleration() const
Gets or sets a value indicating whether or not to use HW acceleration.
Definition trickplayoptions.cpp:137
QJsonObject toJson() const
Definition trickplayoptions.cpp:119
bool m_enableKeyFrameOnlyExtraction
Definition trickplayoptions.h:186
qint32 jpegQuality() const
Gets or sets the jpeg quality to use for image tiles.
Definition trickplayoptions.cpp:197
qint32 m_interval
Definition trickplayoptions.h:189
void setQscale(qint32 newQscale)
Gets or sets the ffmpeg output quality level.
Definition trickplayoptions.cpp:193
void setEnableHwAcceleration(bool newEnableHwAcceleration)
Gets or sets a value indicating whether or not to use HW acceleration.
Definition trickplayoptions.cpp:139
ProcessPriorityClass processPriority() const
Definition trickplayoptions.cpp:161
void setInterval(qint32 newInterval)
Gets or sets the interval, in ms, between each new trickplay image.
Definition trickplayoptions.cpp:169
void replaceData(TrickplayOptions &other)
Definition trickplayoptions.cpp:81
void setWidthResolutions(QList< qint32 > newWidthResolutions)
Gets or sets the target width resolutions, in px, to generates preview images for.
Definition trickplayoptions.cpp:175
qint32 m_tileWidth
Definition trickplayoptions.h:191
qint32 tileHeight() const
Gets or sets number of tile images to allow in Y dimension.
Definition trickplayoptions.cpp:185
void setTileHeight(qint32 newTileHeight)
Gets or sets number of tile images to allow in Y dimension.
Definition trickplayoptions.cpp:187
bool m_enableHwAcceleration
Definition trickplayoptions.h:184
void setJpegQuality(qint32 newJpegQuality)
Gets or sets the jpeg quality to use for image tiles.
Definition trickplayoptions.cpp:199
void setProcessThreads(qint32 newProcessThreads)
Gets or sets the number of threads to be used by ffmpeg.
Definition trickplayoptions.cpp:205
bool m_enableHwEncoding
Definition trickplayoptions.h:185
void setScanBehavior(TrickplayScanBehavior newScanBehavior)
Definition trickplayoptions.cpp:157
qint32 processThreads() const
Gets or sets the number of threads to be used by ffmpeg.
Definition trickplayoptions.cpp:203
TrickplayScanBehavior scanBehavior() const
Definition trickplayoptions.cpp:155
QList< qint32 > widthResolutions() const
Gets or sets the target width resolutions, in px, to generates preview images for.
Definition trickplayoptions.cpp:173
bool enableHwEncoding() const
Gets or sets a value indicating whether or not to use HW accelerated MJPEG encoding.
Definition trickplayoptions.cpp:143
bool enableKeyFrameOnlyExtraction() const
Definition trickplayoptions.cpp:149
qint32 m_qscale
Definition trickplayoptions.h:193
qint32 tileWidth() const
Gets or sets number of tile images to allow in X dimension.
Definition trickplayoptions.cpp:179
qint32 m_tileHeight
Definition trickplayoptions.h:192
void setProcessPriority(ProcessPriorityClass newProcessPriority)
Definition trickplayoptions.cpp:163
qint32 qscale() const
Gets or sets the ffmpeg output quality level.
Definition trickplayoptions.cpp:191
void setEnableKeyFrameOnlyExtraction(bool newEnableKeyFrameOnlyExtraction)
Definition trickplayoptions.cpp:151
QList< qint32 > m_widthResolutions
Definition trickplayoptions.h:190
void setEnableHwEncoding(bool newEnableHwEncoding)
Gets or sets a value indicating whether or not to use HW accelerated MJPEG encoding.
Definition trickplayoptions.cpp:145
TrickplayOptions(bool enableHwAcceleration, bool enableHwEncoding, bool enableKeyFrameOnlyExtraction, TrickplayScanBehavior scanBehavior, ProcessPriorityClass processPriority, qint32 interval, QList< qint32 > widthResolutions, qint32 tileWidth, qint32 tileHeight, qint32 qscale, qint32 jpegQuality, qint32 processThreads)
Definition trickplayoptions.cpp:36
TrickplayScanBehavior m_scanBehavior
Definition trickplayoptions.h:187
qint32 m_processThreads
Definition trickplayoptions.h:195
void setTileWidth(qint32 newTileWidth)
Gets or sets number of tile images to allow in X dimension.
Definition trickplayoptions.cpp:181
qint32 m_jpegQuality
Definition trickplayoptions.h:194
static TrickplayOptions fromJson(QJsonObject source)
Definition trickplayoptions.cpp:96
Definition mediaplayer2.h:20
Contains auto-generated Data Transfer Objects for the Jellyfin HTTP API.
ProcessPriorityClassClass::Value ProcessPriorityClass
Definition processpriorityclass.h:63
TrickplayScanBehaviorClass::Value TrickplayScanBehavior
Definition trickplayscanbehavior.h:59
Definition accessschedule.h:128
Jellyfin::DTO::TrickplayOptions TrickplayOptions
Definition trickplayoptions.h:207
AccessSchedule fromJsonValue(const QJsonValue &source, convertType< AccessSchedule >)
Definition accessschedule.cpp:133
QJsonValue toJsonValue(const AccessSchedule &source, convertType< AccessSchedule >)
Definition accessschedule.cpp:139
Definition jsonconvimpl.h:45