3#include "ui_ultragrid_window.h"
9 const std::string optStr =
"audio.compress";
10 std::vector<SettingItem> res;
13 defaultItem.
name =
"None";
14 defaultItem.
opts.push_back({optStr,
""});
15 res.push_back(std::move(defaultItem));
20 item.opts.push_back({optStr, i});
21 res.push_back(std::move(
item));
28 const std::string optStr =
"audio.playback";
29 std::vector<SettingItem> res;
32 defaultItem.
name =
"None";
33 defaultItem.
opts.push_back({optStr,
""});
34 res.push_back(std::move(defaultItem));
36 for(
const auto &i : availSettings->
getDevices(AUDIO_PLAYBACK)){
39 item.opts.push_back({optStr, i.type});
40 item.opts.push_back({optStr +
"." + i.type +
".device", i.deviceOpt});
41 auto embedAudioIt = i.extra.find(
"isEmbeddedAudio");
42 if(embedAudioIt != i.extra.end() && embedAudioIt->second ==
"t"){
43 item.conditions.push_back({{{
"video.display.embeddedAudioAvailable",
"t"},
false}});
45 res.push_back(std::move(
item));
52 const std::string optStr =
"audio.source";
53 std::vector<SettingItem> res;
56 defaultItem.
name =
"None";
57 defaultItem.
opts.push_back({optStr,
""});
58 res.push_back(std::move(defaultItem));
60 for(
const auto &i : availSettings->
getDevices(AUDIO_SRC)){
63 item.opts.push_back({optStr, i.type});
64 item.opts.push_back({optStr +
"." + i.type +
".device", i.deviceOpt});
65 auto embedAudioIt = i.extra.find(
"isEmbeddedAudio");
66 if(embedAudioIt != i.extra.end() && embedAudioIt->second ==
"t"){
67 item.conditions.push_back({{{
"video.source.embeddedAudioAvailable",
"t"},
false}});
69 res.push_back(std::move(
item));
76 Ui::UltragridWindow *win =
static_cast<Ui::UltragridWindow *
>(opaque);
81 const char *
const losslessCodecs[] = {
89 bool enableBitrate =
true;
91 for(
const auto str : losslessCodecs){
92 if(std::strcmp(str, opt.
getValue().c_str()) == 0){
93 enableBitrate =
false;
99 win->audioBitrateEdit->setEnabled(enableBitrate);
100 win->audioBitrateLabel->setEnabled(enableBitrate);
std::vector< SettingItem > getAudioCompress(AvailableSettings *availSettings)
void audioCompressionCallback(Option &opt, bool suboption, void *opaque)
std::vector< SettingItem > getAudioPlayback(AvailableSettings *availSettings)
std::vector< SettingItem > getAudioSrc(AvailableSettings *availSettings)
const std::vector< Device > & getDevices(SettingType type) const
const std::vector< std::string > & getAvailableSettings(SettingType type) const
std::string getValue() const
void setEnabled(bool enable, bool suppressCallback=false)
const Option & getOption(const std::string &opt) const
std::vector< SettingValue > opts