Go to the documentation of this file. 1 #ifndef MYTHMEDIABUFFER_H
2 #define MYTHMEDIABUFFER_H
5 #include <QReadWriteLock>
6 #include <QWaitCondition>
12 #include "libmythbase/mythconfig.h"
19 #include "libavcodec/avcodec.h"
56 bool UseReadAhead =
true,
58 bool StreamOnly =
false);
88 bool IsDVD (
void)
const;
89 bool IsBD (
void)
const;
97 void Reset (
bool Full =
false,
bool ToAdjust =
false,
bool ResetInternal =
false);
104 long long Seek (
long long Position,
int Whence,
bool HasLock =
false);
120 long long WriterSeek (
long long Position,
int Whence,
bool HasLock =
false);
124 virtual bool IsOpen (
void)
const = 0;
131 virtual bool IsInMenu (
void)
const {
return false; }
136 virtual bool ReOpen (
const QString& =
"") {
return false; }
141 void run(
void)
override;
148 int WaitForAvail (
int Count, std::chrono::milliseconds Timeout);
158 virtual long long SeekInternal (
long long Position,
int Whence) = 0;
long long SeekInternal(long long Position, int Whence) override
long long GetReadPosition(void) const override
bool IsOpen(void) const override
virtual void run(void)
Runs the Qt event loop unless we have a QRunnable, in which case we run the runnable run instead.
This class supports the writing of recordings to disk.
bool OpenFile(const QString &Url, std::chrono::milliseconds Retry=kDefaultOpenTimeout) override
Opens a BBC NetStream for reading.
This is a wrapper around QThread that does several additional things.
std::chrono::duration< CHRONO_TYPE, std::ratio< 1, 90000 > > pts
int SafeRead(void *Buffer, uint Size) override
Keeps track of recordings in a current LiveTV instance.