vdr-plugin-softhddevice-drm-gles 1.6.2
config.h
Go to the documentation of this file.
1// SPDX-License-Identifier: AGPL-3.0-or-later
2
13#ifndef __SOFTHDCONFIG_H
14#define __SOFTHDCONFIG_H
15
16#include <atomic>
17#include <mutex>
18
30public:
31 cSoftHdConfig(void) = default;
32
33 bool SetupParse(const char *, const char *);
34
35 // setup conf parameters
36#ifdef USE_GLES
39#endif
41
46 bool ConfigAudioDownmix = false;
47 bool ConfigAudioSoftvol = false;
48 bool ConfigAudioNormalize = false;
54 int ConfigAudioEq = 0;
56 { 0, 0, 0, 0, 0, 0, 0, 0, 0,
57 0, 0, 0, 0, 0, 0, 0, 0, 0 };
59 bool ConfigLogState = true;
61 bool ConfigDisableDeint = false;
68
69 // pip - default position at right top, 25% scaled
73
74 int ConfigPipUseAlt = false;
75 // alternative position at left top, 25% scaled
79
80 // command line parameters
81 const char *ConfigAudioPCMDevice = nullptr;
82 const char *ConfigAudioPassthroughDevice = nullptr;
83 const char *ConfigAudioMixerChannel = nullptr;
84 const char *ConfigDisplayResolution = nullptr;
85
86 // stats - set by the video decoder
87 const char *CurrentDecoderName = "unknown";
88 const char *CurrentDecoderType = "unknown";
89
90 std::atomic<int> StatMaxShortTermAudioJitterMs = 0;
91 std::atomic<int> StatMaxLongTermAudioJitterMs = 0;
92 std::atomic<int> StatMaxShortTermVideoJitterMs = 0;
93 std::atomic<int> StatMaxLongTermVideoJitterMs = 0;
94
95 void PrintLogLevel(int);
96
99
100private:
102 std::mutex m_mutex;
103};
104
107#endif
Plugin Configuration.
Definition config.h:29
bool ConfigParseH264Dimensions
parse h264 stream for width and height for decoder init
Definition config.h:63
int ConfigVideoAudioDelayMs
config audio delay
Definition config.h:43
const char * ConfigDisplayResolution
display resolution (syntax: "1920x1080@50")
Definition config.h:84
std::atomic< int > StatMaxLongTermAudioJitterMs
logged max overall audio jitter since stream start
Definition config.h:91
bool ConfigLogState
flag logging on/off
Definition config.h:59
bool ConfigAudioNormalize
config use normalize volume
Definition config.h:48
int ConfigAudioAutoAES
config automatic AES handling
Definition config.h:53
int ConfigAudioStereoDescent
config reduce stereo loudness
Definition config.h:52
int ConfigMaxSizeGPUImageCache
config max gpu image cache size
Definition config.h:37
int m_decoderNeedsMaxPackets
Definition config.h:101
std::atomic< int > StatMaxShortTermAudioJitterMs
logged max audio jitter of the last 1000 packets
Definition config.h:90
int ConfigParseH264StreamStart
log frames at stream start up to the given number of I-Frames
Definition config.h:66
int ConfigDecoderFallbackToSwNumPkts
maximum number of packets sent before fallback to sw decoder
Definition config.h:65
bool ConfigAudioCompression
config use volume compression
Definition config.h:50
bool ConfigAudioPassthroughState
flag audio-passthrough on/off
Definition config.h:45
const char * ConfigAudioPCMDevice
audio PCM device
Definition config.h:81
bool ConfigAudioSoftvol
config use software volume
Definition config.h:47
bool ConfigDisableDeint
disable deinterlacer
Definition config.h:61
int ConfigVideoEnableHDR
enable HDR
Definition config.h:40
int ConfigDisableOglOsd
config disable ogl osd
Definition config.h:38
int ConfigPipAltTopPercent
0 = aligned to top, 100 = aligned to bottom
Definition config.h:78
const char * CurrentDecoderType
current decoder type: "hardware" or "software"
Definition config.h:88
int ConfigAudioEqBand[18]
config equalizer filter bands
Definition config.h:55
int ConfigPipLeftPercent
0 = aligned to left, 100 = aligned to right
Definition config.h:71
int ConfigAdditionalBufferLengthMs
config size ms of a/v buffer
Definition config.h:42
int ConfigAudioMaxCompression
config max volume compression
Definition config.h:51
cSoftHdConfig(void)=default
int ConfigPipAltLeftPercent
0 = aligned to left, 100 = aligned to right
Definition config.h:77
int ConfigLogLevels
loglevel config
Definition config.h:60
const char * ConfigAudioMixerChannel
audio mixer channel name
Definition config.h:83
int ConfigPipAltScalePercent
alternative scale factor of pip video
Definition config.h:76
std::atomic< int > StatMaxShortTermVideoJitterMs
logged max video jitter of the last 1000 packets
Definition config.h:92
int ConfigPipTopPercent
0 = aligned to top, 100 = aligned to bottom
Definition config.h:72
bool ConfigDecoderNeedsIFrame
start h264 decoder only when an I-Frame arrives
Definition config.h:62
const char * CurrentDecoderName
current decoder name
Definition config.h:87
bool ConfigDecoderFallbackToSw
fallback to software decoder if the hardware decoder fails
Definition config.h:64
int ConfigAudioEq
config equalizer filter
Definition config.h:54
int ConfigPipScalePercent
scale factor of pip video
Definition config.h:70
int ConfigPipUseAlt
Definition config.h:74
int ConfigAudioPassthroughMask
config audio pass-through mask
Definition config.h:44
std::mutex m_mutex
Definition config.h:102
std::atomic< int > StatMaxLongTermVideoJitterMs
logged max overall video jitter since stream start
Definition config.h:93
bool ConfigHideMainMenuEntry
config hide main menu entry
Definition config.h:58
bool ConfigAudioDownmix
config ffmpeg audio downmix
Definition config.h:46
const char * ConfigAudioPassthroughDevice
audio passthrough device
Definition config.h:82
int ConfigAudioMaxNormalize
config max normalize factor
Definition config.h:49
int ConfigDropInvalidH264PFrames
drop P-Frames with invalid references on stream start up to the given number of I-Frames
Definition config.h:67
void PrintLogLevel(int)
Definition config.cpp:103
void SetDecoderNeedsMaxPackets(int)
Definition config.cpp:141
bool SetupParse(const char *, const char *)
Parse setup parameters.
Definition config.cpp:40
int GetDecoderNeedsMaxPackets(void)
Definition config.cpp:147