3#ifndef QFFMPEGENCODEROPTIONS_P_H
4#define QFFMPEGENCODEROPTIONS_P_H
17#include <QtFFmpegMediaPluginImpl/private/qffmpeghwaccel_p.h>
19#include <QtMultimedia/private/qplatformmediarecorder_p.h>
25void applyVideoEncoderOptions(
const QMediaEncoderSettings &settings,
const QByteArray &codecName, AVCodecContext *codec, AVDictionary **opts);
26void applyAudioEncoderOptions(
const QMediaEncoderSettings &settings,
const QByteArray &codecName, AVCodecContext *codec, AVDictionary **opts);
bool init() override
Called on this thread when thread starts.
AudioEncoder(RecordingEngine &recordingEngine, const QAudioFormat &sourceFormat, const QMediaEncoderSettings &settings)
void addBuffer(const QAudioBuffer &buffer)
void cleanup() override
Called on this thread before thread exits.
bool hasData() const override
Must return true when data is available for processing.
void processOne() override
Process one work item.
bool checkIfCanPushFrame() const override
AVSampleFormat adjustSampleFormat(QSpan< const AVSampleFormat > supportedFormats, AVSampleFormat requested)
void applyVideoEncoderOptions(const QMediaEncoderSettings &settings, const QByteArray &codecName, AVCodecContext *codec, AVDictionary **opts)
Q_STATIC_LOGGING_CATEGORY(qLcEncodingFormatContext, "qt.multimedia.ffmpeg.encodingformatcontext")
void setEncoderInterface(QObject *source, QMediaInputEncoderInterface *)
void setEncoderUpdateConnection(QObject *source, EncoderThread *encoder)
T dequeueIfPossible(std::queue< T > &queue)
std::conditional_t< QT_FFMPEG_AVIO_WRITE_CONST, const uint8_t *, uint8_t * > AvioWriteBufferType
void disconnectEncoderFromSource(EncoderThread *encoder)
void applyAudioEncoderOptions(const QMediaEncoderSettings &settings, const QByteArray &codecName, AVCodecContext *codec, AVDictionary **opts)
ChannelLayoutT adjustChannelLayout(QSpan< const ChannelLayoutT > supportedLayouts, const ChannelLayoutT &requested)
void connectEncoderToSource(Encoder *encoder, Source *source)
constexpr qint64 VideoFrameTimeBase
int adjustSampleRate(QSpan< const int > supportedRates, int requested)
static constexpr bool audioEncoderExtendedTracing