diff --git a/src/citra_qt/dumping/dumping_dialog.cpp b/src/citra_qt/dumping/dumping_dialog.cpp
index ee5fe6b2a..0c39f86e7 100644
--- a/src/citra_qt/dumping/dumping_dialog.cpp
+++ b/src/citra_qt/dumping/dumping_dialog.cpp
@@ -21,33 +21,33 @@ DumpingDialog::DumpingDialog(QWidget* parent)
         accept();
     });
     connect(ui->buttonBox, &QDialogButtonBox::rejected, this, &DumpingDialog::reject);
-    connect(ui->formatOptionsButton, &QPushButton::clicked, [this] {
+    connect(ui->formatOptionsButton, &QToolButton::clicked, [this] {
         OpenOptionsDialog(formats.at(ui->formatComboBox->currentData().toUInt()).options,
-                          format_options);
+                          ui->formatOptionsLineEdit);
     });
-    connect(ui->videoEncoderOptionsButton, &QPushButton::clicked, [this] {
+    connect(ui->videoEncoderOptionsButton, &QToolButton::clicked, [this] {
         OpenOptionsDialog(
             video_encoders.at(ui->videoEncoderComboBox->currentData().toUInt()).options,
-            video_encoder_options);
+            ui->videoEncoderOptionsLineEdit);
     });
-    connect(ui->audioEncoderOptionsButton, &QPushButton::clicked, [this] {
+    connect(ui->audioEncoderOptionsButton, &QToolButton::clicked, [this] {
         OpenOptionsDialog(
             audio_encoders.at(ui->audioEncoderComboBox->currentData().toUInt()).options,
-            audio_encoder_options);
+            ui->audioEncoderOptionsLineEdit);
     });
 
     SetConfiguration();
 
     connect(ui->formatComboBox, qOverload<int>(&QComboBox::currentIndexChanged), [this] {
         ui->pathLineEdit->setText(QString{});
-        format_options.clear();
+        ui->formatOptionsLineEdit->clear();
         PopulateEncoders();
     });
 
     connect(ui->videoEncoderComboBox, qOverload<int>(&QComboBox::currentIndexChanged),
-            [this] { video_encoder_options.clear(); });
+            [this] { ui->videoEncoderOptionsLineEdit->clear(); });
     connect(ui->audioEncoderComboBox, qOverload<int>(&QComboBox::currentIndexChanged),
-            [this] { audio_encoder_options.clear(); });
+            [this] { ui->audioEncoderOptionsLineEdit->clear(); });
 }
 
 DumpingDialog::~DumpingDialog() = default;
@@ -174,21 +174,23 @@ void DumpingDialog::OnToolButtonClicked() {
 }
 
 void DumpingDialog::OpenOptionsDialog(const std::vector<VideoDumper::OptionInfo>& options,
-                                      std::string& current_value) {
-    OptionsDialog dialog(this, options, current_value);
+                                      QLineEdit* line_edit) {
+    OptionsDialog dialog(this, options, line_edit->text().toStdString());
     if (dialog.exec() != QDialog::DialogCode::Accepted) {
         return;
     }
 
-    current_value = dialog.GetCurrentValue();
+    line_edit->setText(QString::fromStdString(dialog.GetCurrentValue()));
 }
 
 void DumpingDialog::SetConfiguration() {
     Populate();
 
-    format_options = Settings::values.format_options;
-    video_encoder_options = Settings::values.video_encoder_options;
-    audio_encoder_options = Settings::values.audio_encoder_options;
+    ui->formatOptionsLineEdit->setText(QString::fromStdString(Settings::values.format_options));
+    ui->videoEncoderOptionsLineEdit->setText(
+        QString::fromStdString(Settings::values.video_encoder_options));
+    ui->audioEncoderOptionsLineEdit->setText(
+        QString::fromStdString(Settings::values.audio_encoder_options));
     last_path = UISettings::values.video_dumping_path;
     ui->videoBitrateSpinBox->setValue(static_cast<int>(Settings::values.video_bitrate));
     ui->audioBitrateSpinBox->setValue(static_cast<int>(Settings::values.audio_bitrate));
@@ -196,14 +198,14 @@ void DumpingDialog::SetConfiguration() {
 
 void DumpingDialog::ApplyConfiguration() {
     Settings::values.output_format = formats.at(ui->formatComboBox->currentData().toUInt()).name;
-    Settings::values.format_options = format_options;
+    Settings::values.format_options = ui->formatOptionsLineEdit->text().toStdString();
     Settings::values.video_encoder =
         video_encoders.at(ui->videoEncoderComboBox->currentData().toUInt()).name;
-    Settings::values.video_encoder_options = video_encoder_options;
+    Settings::values.video_encoder_options = ui->videoEncoderOptionsLineEdit->text().toStdString();
     Settings::values.video_bitrate = ui->videoBitrateSpinBox->value();
     Settings::values.audio_encoder =
         audio_encoders.at(ui->audioEncoderComboBox->currentData().toUInt()).name;
-    Settings::values.audio_encoder_options = audio_encoder_options;
+    Settings::values.audio_encoder_options = ui->audioEncoderOptionsLineEdit->text().toStdString();
     Settings::values.audio_bitrate = ui->audioBitrateSpinBox->value();
     UISettings::values.video_dumping_path = last_path;
     Settings::Apply();
diff --git a/src/citra_qt/dumping/dumping_dialog.h b/src/citra_qt/dumping/dumping_dialog.h
index 7476770ba..c2b0999ea 100644
--- a/src/citra_qt/dumping/dumping_dialog.h
+++ b/src/citra_qt/dumping/dumping_dialog.h
@@ -10,6 +10,8 @@ namespace Ui {
 class DumpingDialog;
 }
 
+class QLineEdit;
+
 class DumpingDialog : public QDialog {
     Q_OBJECT
 
@@ -26,12 +28,9 @@ private:
     void SetConfiguration();
     void OnToolButtonClicked();
     void OpenOptionsDialog(const std::vector<VideoDumper::OptionInfo>& options,
-                           std::string& current_value);
+                           QLineEdit* line_edit);
 
     std::unique_ptr<Ui::DumpingDialog> ui;
-    std::string format_options;
-    std::string video_encoder_options;
-    std::string audio_encoder_options;
 
     QString last_path;
 
diff --git a/src/citra_qt/dumping/dumping_dialog.ui b/src/citra_qt/dumping/dumping_dialog.ui
index a3468ed3f..6e33d47d8 100644
--- a/src/citra_qt/dumping/dumping_dialog.ui
+++ b/src/citra_qt/dumping/dumping_dialog.ui
@@ -7,7 +7,7 @@
     <x>0</x>
     <y>0</y>
     <width>600</width>
-    <height>360</height>
+    <height>420</height>
    </rect>
   </property>
   <property name="windowTitle">
@@ -30,24 +30,34 @@
       <item row="0" column="1">
        <widget class="QComboBox" name="formatComboBox"/>
       </item>
-      <item row="0" column="2">
-       <widget class="QPushButton" name="formatOptionsButton">
+      <item row="1" column="0">
+       <widget class="QLabel">
         <property name="text">
-         <string>Options...</string>
+         <string>Options:</string>
         </property>
        </widget>
       </item>
-      <item row="1" column="0">
+      <item row="1" column="1">
+       <widget class="QLineEdit" name="formatOptionsLineEdit"/>
+      </item>
+      <item row="1" column="2">
+       <widget class="QToolButton" name="formatOptionsButton">
+        <property name="text">
+         <string>...</string>
+        </property>
+       </widget>
+      </item>
+      <item row="2" column="0">
        <widget class="QLabel">
         <property name="text">
          <string>Path:</string>
         </property>
        </widget>
       </item>
-      <item row="1" column="1">
+      <item row="2" column="1">
        <widget class="QLineEdit" name="pathLineEdit"/>
       </item>
-      <item row="1" column="2">
+      <item row="2" column="2">
        <widget class="QToolButton" name="pathExplore">
         <property name="text">
          <string>...</string>
@@ -80,21 +90,31 @@
         </property>
        </widget>
       </item>
-      <item row="0" column="2">
-       <widget class="QPushButton" name="videoEncoderOptionsButton">
+      <item row="1" column="0">
+       <widget class="QLabel">
         <property name="text">
-         <string>Options...</string>
+         <string>Options:</string>
         </property>
        </widget>
       </item>
-      <item row="1" column="0">
+      <item row="1" column="1">
+       <widget class="QLineEdit" name="videoEncoderOptionsLineEdit"/>
+      </item>
+      <item row="1" column="2">
+       <widget class="QToolButton" name="videoEncoderOptionsButton">
+        <property name="text">
+         <string>...</string>
+        </property>
+       </widget>
+      </item>
+      <item row="2" column="0">
        <widget class="QLabel">
         <property name="text">
          <string>Bitrate:</string>
         </property>
        </widget>
       </item>
-      <item row="1" column="1">
+      <item row="2" column="1">
        <widget class="QSpinBox" name="videoBitrateSpinBox">
         <property name="maximum">
          <number>10000000</number>
@@ -104,7 +124,7 @@
         </property>
        </widget>
       </item>
-      <item row="1" column="2">
+      <item row="2" column="2">
        <widget class="QLabel">
         <property name="text">
          <string>bps</string>
@@ -137,21 +157,31 @@
         </property>
        </widget>
       </item>
-      <item row="0" column="2">
-       <widget class="QPushButton" name="audioEncoderOptionsButton">
+      <item row="1" column="0">
+       <widget class="QLabel">
         <property name="text">
-         <string>Options...</string>
+         <string>Options:</string>
         </property>
        </widget>
       </item>
-      <item row="1" column="0">
+      <item row="1" column="1">
+       <widget class="QLineEdit" name="audioEncoderOptionsLineEdit"/>
+      </item>
+      <item row="1" column="2">
+       <widget class="QToolButton" name="audioEncoderOptionsButton">
+        <property name="text">
+         <string>...</string>
+        </property>
+       </widget>
+      </item>
+      <item row="2" column="0">
        <widget class="QLabel">
         <property name="text">
          <string>Bitrate:</string>
         </property>
        </widget>
       </item>
-      <item row="1" column="1">
+      <item row="2" column="1">
        <widget class="QSpinBox" name="audioBitrateSpinBox">
         <property name="maximum">
          <number>1000000</number>
@@ -161,7 +191,7 @@
         </property>
        </widget>
       </item>
-      <item row="1" column="2">
+      <item row="2" column="2">
        <widget class="QLabel">
         <property name="text">
          <string>bps</string>