22 #ifndef QTAV_VIDEOENCODER_H 23 #define QTAV_VIDEOENCODER_H 27 #include <QtCore/QStringList> 35 Q_PROPERTY(
int width READ width WRITE setWidth NOTIFY widthChanged)
36 Q_PROPERTY(
int height READ height WRITE setHeight NOTIFY heightChanged)
37 Q_PROPERTY(qreal frameRate READ frameRate WRITE setFrameRate NOTIFY frameRateChanged)
38 Q_PROPERTY(
QtAV::
VideoFormat::PixelFormat pixelFormat READ pixelFormat WRITE setPixelFormat NOTIFY pixelFormatChanged)
42 static QStringList supportedCodecs();
50 static
VideoEncoder* create(const
char* name = "FFmpeg");
51 virtual VideoEncoderId
id() const = 0;
65 void setWidth(
int value);
67 void setHeight(
int value);
75 void setFrameRate(qreal value);
76 qreal frameRate() const;
77 static qreal defaultFrameRate() {
return 25;}
89 void frameRateChanged();
90 void pixelFormatChanged();
93 template<
class C>
static bool Register(VideoEncoderId
id,
const char* name) {
return Register(
id, create<C>, name);}
99 static VideoEncoderId* next(VideoEncoderId*
id = 0);
100 static const char* name(VideoEncoderId
id);
101 static VideoEncoderId id(
const char* name);
103 template<
class C>
static VideoEncoder* create() {
return new C();}
105 static bool Register(VideoEncoderId
id, VideoEncoderCreator,
const char *name);
113 #endif // QTAV_VIDEOENCODER_H Definition: AVEncoder.h:33
#define Q_AV_EXPORT
Definition: QtAV_Global.h:40
#define DPTR_DECLARE_PRIVATE(Class)
Definition: dptr.h:107
Definition: AVEncoder_p.h:84
static bool Register(VideoEncoderId id, const char *name)
Definition: VideoEncoder.h:93
Definition: VideoFrame.h:32
int VideoEncoderId
Definition: VideoEncoder.h:30
AudioOutput ao; ao.setAudioFormat(fmt); ao.open(); while (has_data) { data = read_data(ao->bufferSize...
Definition: AudioDecoder.h:31
Definition: VideoEncoder.h:32
#define Q_DECL_OVERRIDE
Definition: QtAV_Global.h:177