3#ifndef QFFMPEGENCODER_P_H
4#define QFFMPEGENCODER_P_H
20#include <private/qplatformmediarecorder_p.h>
38class VideoFrameEncoder;
39class EncodingInitializer;
60 const std::vector<QPlatformVideoSource *> &videoSources);
79 template<
typename... Args>
80 void addMediaFrameHandler(Args &&...
args);
82 class EncodingFinalizer :
public QThread
99 template <
typename F,
typename... Args>
100 void forEachEncoder(F &&
f, Args &&...
args);
104 std::unique_ptr<EncodingFormatContext> m_formatContext;
105 Muxer *m_muxer =
nullptr;
107 QList<AudioEncoder *> m_audioEncoders;
108 QList<VideoEncoder *> m_videoEncoders;
109 QList<QMetaObject::Connection> m_connections;
110 std::unique_ptr<EncodingInitializer> m_initializer;
113 qint64 m_timeRecorded = 0;
115 bool m_isHeaderWritten =
false;
RecordingEngine(const QMediaEncoderSettings &settings, std::unique_ptr< EncodingFormatContext > context)
void newTimeStamp(qint64 time)
AVFormatContext * avFormatContext()
void setMetaData(const QMediaMetaData &metaData)
void sessionError(QMediaRecorder::Error code, const QString &description)
void durationChanged(qint64 duration)
void streamInitializationError(QMediaRecorder::Error code, const QString &description)
\macro QT_RESTRICTED_CAST_FROM_ASCII
The QVideoFrame class represents a frame of video data.
T dequeueIfPossible(std::queue< T > &queue)
Combined button and popup list for selecting options.
GLsizei GLsizei GLchar * source
GLenum GLenum GLenum input
QSettings settings("MySoft", "Star Runner")
[0]