9 #ifndef AUDIO_OUTPUT_SETTINGS_H
10 #define AUDIO_OUTPUT_SETTINGS_H
20 #include "libavcodec/avcodec.h"
59 void AddSupportedRate(
int rate);
60 bool IsSupportedRate(
int rate);
61 int NearestSupportedRate(
int rate);
62 int BestSupportedRate();
68 static const char* FormatToString(
AudioFormat format);
70 static AudioFormat AVSampleFormatToFormat(AVSampleFormat format,
int bits = 0);
71 static AVSampleFormat FormatToAVSampleFormat(
AudioFormat format);
72 void AddSupportedChannels(
int channels);
73 bool IsSupportedChannels(
int channels);
74 int BestSupportedChannels();
89 {
return (m_features & arg) != 0U; };
91 {
return (m_features & arg) != 0U; };
132 void setFeature(
bool val,
int arg);
138 void SetBestSupportedChannels(
int channels);
144 int GetMaxHDRate()
const;
157 static QString GetPassthroughParams(
int codec,
int codec_profile,
158 int &samplerate,
int &channels,
171 void setELD(QByteArray *ba);
179 int BestSupportedChannelsELD();
183 int BestSupportedPCMChannelsELD();
186 void SortSupportedChannels();
193 int m_passthrough {-1};
197 bool m_invalid {
false};
204 bool m_hasEld {
false};
210 rate_array::iterator m_srIt { };
211 format_array::iterator m_sfIt { };
217 #endif // AUDIO_OUTPUT_SETTINGS_H