File indexing completed on 2025-01-19 03:57:04

0001 /*********************************************************
0002  * Copyright (C) 2020, Val Doroshchuk <valbok@gmail.com> *
0003  *                                                       *
0004  * This file is part of QtAVPlayer.                      *
0005  * Free Qt Media Player based on FFmpeg.                 *
0006  *********************************************************/
0007 
0008 #ifndef QAVFRAME_H
0009 #define QAVFRAME_H
0010 
0011 #include <QtAVPlayer/qtavplayerglobal.h>
0012 #include <QtAVPlayer/qavstreamframe.h>
0013 
0014 QT_BEGIN_NAMESPACE
0015 
0016 struct AVFrame;
0017 struct AVRational;
0018 class QAVFramePrivate;
0019 class QAVFrame : public QAVStreamFrame
0020 {
0021 public:
0022     QAVFrame();
0023     ~QAVFrame();
0024     QAVFrame(const QAVFrame &other);
0025     QAVFrame &operator=(const QAVFrame &other);
0026     operator bool() const;
0027     AVFrame *frame() const;
0028 
0029     void setFrameRate(const AVRational &value);
0030     void setTimeBase(const AVRational &value);
0031     QString filterName() const;
0032     void setFilterName(const QString &name);
0033 
0034 protected:
0035     QAVFrame(QAVFramePrivate &d);
0036     Q_DECLARE_PRIVATE(QAVFrame)
0037 };
0038 
0039 QT_END_NAMESPACE
0040 
0041 #endif