MythTV master
recordingfile.h
Go to the documentation of this file.
1#ifndef RECORDING_FILE_H
2#define RECORDING_FILE_H
3
4#include <QString>
5#include <QSize>
6
9
10class RecordingRule;
11
12enum AVContainer : std::uint8_t
13{
18};
19
30{
31 public:
32 RecordingFile() = default;
33 ~RecordingFile() = default;
34
35 bool Load();
36 bool Save();
37
38 uint m_recordingId {0};
39
40 QString m_storageDeviceID; // aka Hostname in old parlance
42
43 uint m_fileId {0};
44 QString m_fileName;
45 uint64_t m_fileSize {0};
46
47 AVContainer m_containerFormat {formatUnknown};
48
49 QString m_videoCodec; // avcodec_get_name
51 double m_videoAspectRatio {0.0};
52 double m_videoFrameRate {0.0};
53
54 QString m_audioCodec; // Main audio stream or best quality stream?
55 int m_audioChannels {0};
56 double m_audioSampleRate {0.0};
57 int m_audioBitrate {0};
58
59 static QString AVContainerToString(AVContainer format);
60 static AVContainer AVContainerFromString(const QString &formatStr);
61};
62
63#endif // RECORDING_FILE_H
Holds information on a recording file and it's video and audio streams.
Definition: recordingfile.h:30
QString m_storageDeviceID
Definition: recordingfile.h:40
QString m_storageGroup
Definition: recordingfile.h:41
RecordingFile()=default
~RecordingFile()=default
QString m_videoCodec
Definition: recordingfile.h:49
QString m_audioCodec
Definition: recordingfile.h:54
QString m_fileName
Definition: recordingfile.h:44
QSize m_videoResolution
Definition: recordingfile.h:50
Internal representation of a recording rule, mirrors the record table.
Definition: recordingrule.h:30
unsigned int uint
Definition: freesurround.h:24
#define MTV_PUBLIC
Definition: mythtvexp.h:15
AVContainer
Definition: recordingfile.h:13
@ formatMPEG2_TS
Definition: recordingfile.h:16
@ formatMPEG2_PS
Definition: recordingfile.h:17
@ formatNUV
Definition: recordingfile.h:15
@ formatUnknown
Definition: recordingfile.h:14
QScriptValue formatStr(QScriptContext *context, QScriptEngine *interpreter)