mirror of
https://github.com/obsproject/obs-studio.git
synced 2026-03-06 15:46:13 -05:00
UI: Add multi-track FFmpeg output support
This commit is contained in:
@@ -1774,8 +1774,8 @@ void OBSBasicSettings::LoadAdvOutputFFmpegSettings()
|
||||
"FFVCustom");
|
||||
int audioBitrate = config_get_int(main->Config(), "AdvOut",
|
||||
"FFABitrate");
|
||||
int audioTrack = config_get_int(main->Config(), "AdvOut",
|
||||
"FFAudioTrack");
|
||||
int audioMixes = config_get_int(main->Config(), "AdvOut",
|
||||
"FFAudioMixes");
|
||||
const char *aEncoder = config_get_string(main->Config(), "AdvOut",
|
||||
"FFAEncoder");
|
||||
int aEncoderId = config_get_int(main->Config(), "AdvOut",
|
||||
@@ -1801,14 +1801,12 @@ void OBSBasicSettings::LoadAdvOutputFFmpegSettings()
|
||||
SelectEncoder(ui->advOutFFAEncoder, aEncoder, aEncoderId);
|
||||
ui->advOutFFACfg->setText(aEncCustom);
|
||||
|
||||
switch (audioTrack) {
|
||||
case 1: ui->advOutFFTrack1->setChecked(true); break;
|
||||
case 2: ui->advOutFFTrack2->setChecked(true); break;
|
||||
case 3: ui->advOutFFTrack3->setChecked(true); break;
|
||||
case 4: ui->advOutFFTrack4->setChecked(true); break;
|
||||
case 5: ui->advOutFFTrack5->setChecked(true); break;
|
||||
case 6: ui->advOutFFTrack6->setChecked(true); break;
|
||||
}
|
||||
ui->advOutFFTrack1->setChecked(audioMixes & (1 << 0));
|
||||
ui->advOutFFTrack2->setChecked(audioMixes & (1 << 1));
|
||||
ui->advOutFFTrack3->setChecked(audioMixes & (1 << 2));
|
||||
ui->advOutFFTrack4->setChecked(audioMixes & (1 << 3));
|
||||
ui->advOutFFTrack5->setChecked(audioMixes & (1 << 4));
|
||||
ui->advOutFFTrack6->setChecked(audioMixes & (1 << 5));
|
||||
}
|
||||
|
||||
void OBSBasicSettings::LoadAdvOutputAudioSettings()
|
||||
@@ -3133,11 +3131,13 @@ void OBSBasicSettings::SaveOutputSettings()
|
||||
SaveSpinBox(ui->advOutFFABitrate, "AdvOut", "FFABitrate");
|
||||
SaveEncoder(ui->advOutFFAEncoder, "AdvOut", "FFAEncoder");
|
||||
SaveEdit(ui->advOutFFACfg, "AdvOut", "FFACustom");
|
||||
SaveTrackIndex(main->Config(), "AdvOut", "FFAudioTrack",
|
||||
ui->advOutFFTrack1, ui->advOutFFTrack2,
|
||||
ui->advOutFFTrack3, ui->advOutFFTrack4,
|
||||
ui->advOutFFTrack5, ui->advOutFFTrack6);
|
||||
|
||||
config_set_int(main->Config(), "AdvOut", "FFAudioMixes",
|
||||
(ui->advOutFFTrack1->isChecked() ? (1 << 0) : 0) |
|
||||
(ui->advOutFFTrack2->isChecked() ? (1 << 1) : 0) |
|
||||
(ui->advOutFFTrack3->isChecked() ? (1 << 2) : 0) |
|
||||
(ui->advOutFFTrack4->isChecked() ? (1 << 3) : 0) |
|
||||
(ui->advOutFFTrack5->isChecked() ? (1 << 4) : 0) |
|
||||
(ui->advOutFFTrack6->isChecked() ? (1 << 5) : 0));
|
||||
SaveCombo(ui->advOutTrack1Bitrate, "AdvOut", "Track1Bitrate");
|
||||
SaveCombo(ui->advOutTrack2Bitrate, "AdvOut", "Track2Bitrate");
|
||||
SaveCombo(ui->advOutTrack3Bitrate, "AdvOut", "Track3Bitrate");
|
||||
|
||||
Reference in New Issue
Block a user