如何使用文本框更改 nreco 函数的比特率?

How to change bitrate with nreco functions using textbox?

我正在尝试使用 Nreco.VideoConverter 在 C# 中编写一个转换器。我以前从未有过这些经验。我开始研究这个领域是因为我在工作中被问到。我的问题是;我可以更改视频转换器中的比特率值。如果您有组合框或特定值。但是,如果从文本框中输入任何值,我无法相应地调整代码。下面是我使用的代码。请帮忙。

代码是;

  if (comboBox2.Text == "_1000kbit")
    {
    if (comboBox1.Text == "mp4" || comboBox1.Text == "mp4 1280 x 720 16 : 9" || comboBox1.Text == 
    "mp4 640 x 350 16 : 9" || comboBox1.Text == "mp4 720 x 540")
    {
     var ffmpeg = new NReco.VideoConverter.FFMpegConverter();
     ffmpeg.ConvertMedia(VideoPath, null, MusicPath, null, new ConvertSettings()
       {
       CustomOutputArgs = "-b:v 1000k -bufsize 1000k"
       });
       }

         }

但我想这样做;

 if (comboBox2.Text == "_1000kbit")
          {
           if (comboBox1.Text == "mp4" || comboBox1.Text == "mp4 1280 x 720 16 : 9" || 
            comboBox1.Text == "mp4 640 x 350 16 : 9" || comboBox1.Text == "mp4 720 x 540")
           {
              var ffmpeg = new NReco.VideoConverter.FFMpegConverter();
             ffmpeg.ConvertMedia(VideoPath, null, MusicPath, null, new ConvertSettings()
            {
          CustomOutputArgs = "-b:v"+textBox1.Text+"k -bufsize"+textBox1.Text+"k"
          });
          }

             }

所以有可能吗?如果可能我该怎么做? 因为当我输入它时它说 ffmpeg 找不到参数。 顺便说一下,我将 textbox 值设置为 int。 请为此提供帮助。 谢谢。

我尝试过的:

我想这样做;但这是可能的还是真的我不知道

试试这个

 CustomOutputArgs = String.Format("-b:v {0}k -bufsize {0}k", textBox1.Text);

编辑:解释代码中的问题 您的 CustomOutputArgs 结果是:-b:v1000k -bufsize1000k 而不是 -b:v 1000k -bufsize 1000k(注意空格)