diff --git a/src/rust/lib_ccxr/src/common/options.rs b/src/rust/lib_ccxr/src/common/options.rs index b263502b8..c982203f6 100644 --- a/src/rust/lib_ccxr/src/common/options.rs +++ b/src/rust/lib_ccxr/src/common/options.rs @@ -639,3 +639,23 @@ impl Default for Options { } } } + +impl Options { + pub fn millis_separator(&self) -> char { + if self.ucla { + '.' + } else { + self.date_format.millis_separator() + } + } +} + +impl EncoderConfig { + pub fn millis_separator(&self) -> char { + if self.ucla { + '.' + } else { + self.date_format.millis_separator() + } + } +} diff --git a/src/rust/src/common.rs b/src/rust/src/common.rs index aa6eefae7..e1ad15cbb 100644 --- a/src/rust/src/common.rs +++ b/src/rust/src/common.rs @@ -69,7 +69,7 @@ impl FromRust for ccx_s_options { self.settings_dtvcc = options.settings_dtvcc.to_ctype(); self.is_608_enabled = options.is_608_enabled as _; self.is_708_enabled = options.is_708_enabled as _; - self.millis_separator = options.date_format.millis_separator() as _; + self.millis_separator = options.millis_separator() as _; self.binary_concat = options.binary_concat as _; self.use_gop_as_pts = if let Some(usegops) = options.use_gop_as_pts { if usegops { @@ -257,7 +257,7 @@ impl CType2 for TeletextConfig { encoding: value.enc_cfg.encoding.to_ctype() as _, nofontcolor: self.nofontcolor.into(), nohtmlescape: self.nohtmlescape.into(), - millis_separator: self.date_format.millis_separator() as _, + millis_separator: value.millis_separator() as _, latrusmap: self.latrusmap.into(), }; config.set_verbose(self.verbose.into()); @@ -571,7 +571,7 @@ impl CType for EncoderConfig { ucla: self.ucla as _, encoding: self.encoding as _, date_format: self.date_format.to_ctype(), - millis_separator: self.date_format.millis_separator() as _, + millis_separator: self.millis_separator() as _, autodash: self.autodash as _, trim_subs: self.trim_subs as _, sentence_cap: self.sentence_cap as _, diff --git a/src/rust/src/parser.rs b/src/rust/src/parser.rs index d84444c1b..d7e4d39a7 100644 --- a/src/rust/src/parser.rs +++ b/src/rust/src/parser.rs @@ -1222,11 +1222,9 @@ impl OptionsExt for Options { tlt_config.page = Cell::new(TeletextPageNumber::from(tlt_config.user_page)); } - let mut millis_separator = ','; // Red Hen/ UCLA Specific stuff if args.ucla { self.ucla = true; - millis_separator = '.'; self.enc_cfg.no_bom = true; if !self.transcript_settings.is_final { @@ -1291,11 +1289,15 @@ impl OptionsExt for Options { } if args.sects { - self.date_format = TimestampFormat::Seconds { millis_separator }; + self.date_format = TimestampFormat::Seconds { + millis_separator: ',', + }; } if args.datets { - self.date_format = TimestampFormat::Date { millis_separator }; + self.date_format = TimestampFormat::Date { + millis_separator: ',', + }; } if args.teletext {