Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qffmpegaudioencoderutils_p.h
Go to the documentation of this file.
1// Copyright (C) 2024 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#ifndef QFFMPEGAUDIOENCODERUTILS_P_H
5#define QFFMPEGAUDIOENCODERUTILS_P_H
6
7//
8// W A R N I N G
9// -------------
10//
11// This file is not part of the Qt API. It exists purely as an
12// implementation detail. This header file may change from version to
13// version without notice, or even be removed.
14//
15// We mean it.
16//
17
18#include <QtFFmpegMediaPluginImpl/private/qffmpeg_p.h>
19#include <QtCore/qspan.h>
20
22
23namespace QFFmpeg {
24
25AVSampleFormat adjustSampleFormat(QSpan<const AVSampleFormat> supportedFormats, AVSampleFormat requested);
26
27int adjustSampleRate(QSpan<const int> supportedRates, int requested);
28
29ChannelLayoutT adjustChannelLayout(QSpan<const ChannelLayoutT> supportedLayouts,
30 const ChannelLayoutT &requested);
31
32} // namespace QFFmpeg
33
34QT_END_NAMESPACE
35
36#endif // QFFMPEGAUDIOENCODERUTILS_P_H
The QAudioFormat class stores audio stream parameter information.
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)
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)
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