11AVSampleFormat
adjustSampleFormat(
const AVSampleFormat *supportedFormats, AVSampleFormat requested)
13 auto calcScore = [requested](AVSampleFormat
format) {
20 return result == AV_SAMPLE_FMT_NONE ? requested :
result;
25 auto calcScore = [requested](
int rate) {
27 : requested <=
rate ?
rate - requested
28 : requested -
rate - 1000000;
36 int requestedChannelsNumber)
38 if (supportedChannelsNumber >= requestedChannelsNumber)
39 return requestedChannelsNumber - supportedChannelsNumber;
41 return supportedChannelsNumber - requestedChannelsNumber - 10000;
45 int requestedChannelsNumber, uint64_t requestedMask)
47 if ((supportedMask & requestedMask) == requestedMask)
53#if QT_FFMPEG_OLD_CHANNEL_LAYOUT
57 auto calcScore = [requested](uint64_t
mask) {
69 const AVChannelLayout &requested)
71 auto calcScore = [&requested](
const AVChannelLayout &
layout) {
79 if (
layout.order == AV_CHANNEL_ORDER_CUSTOM || requested.order == AV_CHANNEL_ORDER_CUSTOM)
82 const auto offset =
layout.order == requested.order ? 1 : 100;
85 requested.nb_channels, requested.u.mask)
constexpr AVScore BestAVScore
std::pair< Format, AVScore > findBestAVFormat(const Format *fmts, const CalculateScore &calculateScore)
static AVScore calculateScoreByChannelsCount(int supportedChannelsNumber, int requestedChannelsNumber)
AVSampleFormat adjustSampleFormat(const AVSampleFormat *supportedFormats, AVSampleFormat requested)
static AVScore calculateScoreByChannelsMask(int supportedChannelsNumber, uint64_t supportedMask, int requestedChannelsNumber, uint64_t requestedMask)
AVChannelLayout adjustChannelLayout(const AVChannelLayout *supportedLayouts, const AVChannelLayout &requested)
int adjustSampleRate(const int *supportedRates, int requested)
constexpr AVScore NotSuitableAVScore
auto findBestAVValue(const Value *values, const CalculateScore &calculateScore, Value invalidValue={})
Combined button and popup list for selecting options.
Q_DECL_CONST_FUNCTION QT_POPCOUNT_CONSTEXPR uint qPopulationCount(quint32 v) noexcept
GLenum GLuint GLintptr offset
GLint GLint GLint GLint GLint GLint GLint GLbitfield mask
GLint GLsizei GLsizei GLenum format