]> git.nihav.org Git - nihav-encoder.git/commitdiff
allow to set muxer options before it is created
authorKostya Shishkov <kostya.shishkov@gmail.com>
Tue, 9 Jun 2026 16:56:12 +0000 (18:56 +0200)
committerKostya Shishkov <kostya.shishkov@gmail.com>
Tue, 9 Jun 2026 16:56:12 +0000 (18:56 +0200)
This way it will pick up options that are needed to set before e.g.
container header is written (like custom stream tags).

src/main.rs

index 2956a75063f4d70f26f926928d84631ef091e951..27ec29761af11287d309c59b43096c2e32547988 100644 (file)
@@ -788,13 +788,14 @@ fn main() {
         return;
     }
     let mut bw = FileWriter::new_write(ret.unwrap());
-    let ret = create_muxer(mux_creator, out_sm, &mut bw);
-    if let Err(err) = ret {
+    let mut mux_core = mux_creator.new_muxer(&mut bw);
+    parse_and_apply_options!(mux_core, &transcoder.mux_opts, "output");
+    if let Err(err) = mux_core.create(&out_sm) {
         println!("cannot create muxer instance {:?}", err);
         transcoder.debug_log(DebugLog::GENERAL, &format!("Cannot create muxer: {err:?}"));
         return;
     }
-    let mut mux = ret.unwrap();
+    let mut mux = Muxer::new(mux_core, out_sm);
     parse_and_apply_options!(mux, &transcoder.mux_opts, "output");
 
     println!("Output {} muxer {}", transcoder.output_name, ofmt);