From a0145d93d6788223b3ae2c228ca3295a1d59a398 Mon Sep 17 00:00:00 2001 From: Kostya Shishkov Date: Wed, 11 Mar 2026 18:01:42 +0100 Subject: [PATCH] videoplayer: add an option for forcing demuxer format --- videoplayer/src/main.rs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/videoplayer/src/main.rs b/videoplayer/src/main.rs index 35d295f..47d4dbb 100644 --- a/videoplayer/src/main.rs +++ b/videoplayer/src/main.rs @@ -455,6 +455,7 @@ struct Player { force_astr: Option, sc_size: ScaleSize, sc_dbg: bool, + force_dmx: Option, vthreads: usize, use_mt: bool, @@ -506,6 +507,7 @@ impl Player { force_astr: None, sc_size: ScaleSize::Auto, sc_dbg: false, + force_dmx: None, vthreads: 3, use_mt: true, @@ -776,7 +778,9 @@ impl Player { return window; }; let br = Box::new(FileReader::new_read(file)); - let mut dmx = DemuxerObject::create(br, &self.full_reg, name, None, false, &[], false); + let fdmx = self.force_dmx.as_deref(); + let mut dmx = DemuxerObject::create(br, &self.full_reg, name, fdmx, false, &[], false); + self.force_dmx = None; if dmx.is_none() { println!("error creating demuxer"); return window; @@ -1301,6 +1305,11 @@ fn main() { "-ignosd" => { player.show_osd = None; }, + "-f" | "-demuxer" => { + if let Some(arg) = aiter.next() { + player.force_dmx = Some(arg.to_string()); + } + }, "-vstr" => { if let Some(arg) = aiter.next() { if arg == "auto" || arg == "-1" { -- 2.39.5