parse and try to apply output stream options before the encoder is created too
authorKostya Shishkov <kostya.shishkov@gmail.com>
Sun, 1 Oct 2023 16:05:26 +0000 (18:05 +0200)
committerKostya Shishkov <kostya.shishkov@gmail.com>
Sun, 1 Oct 2023 16:05:26 +0000 (18:05 +0200)
src/main.rs

index e800ec0ae3313556c8a5b08e0b53212a450d3c9a..90a871154122bcd01760db3afefabf682f1ea479 100644 (file)
@@ -637,6 +637,9 @@ println!("can't generate default channel map for {} channels", dainfo.channels);
                         },
                         _ => OutputConvert::None,
                     };
+                let name = format!("output stream {}", out_id);
+                parse_and_apply_options!(encoder, &oopts.enc_opts, name);
+
                 let ret = encoder.init(out_id, ret_eparams);
                 if ret.is_err() {
                     println!("error initialising encoder");
@@ -644,7 +647,6 @@ println!("can't generate default channel map for {} channels", dainfo.channels);
                 }
                 out_sm.add_stream_ref(ret.unwrap());
 
-                let name = format!("output stream {}", out_id);
                 parse_and_apply_options!(encoder, &oopts.enc_opts, name);
 
                 self.encoders.push(OutputMode::Encode(out_id, encoder, cvt));