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