You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
#1815 landed generic verbatim MPEG-TS carriage in the moq-mux library (the mpegts
catalog section + per-PID verbatim tracks), but listed CLI wiring as out of scope.
Today moq-cli still uses the media-only Catalog<()> path, so SCTE-35 / teletext /
DVB AC-3 / private streams are dropped when you go through moq pub | relay | moq sub.
This issue wires the Ext (mpegts) catalog through the CLI so a contribution TS feed
keeps its ancillary streams end-to-end. Part of #1799.
Why
This is the only thing standing between the merged #1815 carriage and being able to
actually exercise it from the CLI. Without it the verbatim lane is library-only.
Changes (the library is already generic; this just selects Ext)
rs/moq-cli/src/publish.rs: in the PublishFormat::Ts arm build a moq_mux::catalog::Producer::<moq_mux::container::ts::catalog::Ext>::new(..) and a ts::Import over it; change PublishDecoder::Ts to hold ts::Import<moq_mux::container::ts::catalog::Ext>. (The other formats keep ().)
rs/moq-cli/src/subscribe.rs::run_ts: use ts::Export::with_ts(self.broadcast, self.catalog)? instead of Export::with_catalog_format(..) (.with_latency chains).
Relay needs no change (it forwards the extra tracks + mpegts section transparently).
Summary
#1815 landed generic verbatim MPEG-TS carriage in the
moq-muxlibrary (thempegtscatalog section + per-PID verbatim tracks), but listed CLI wiring as out of scope.
Today
moq-clistill uses the media-onlyCatalog<()>path, so SCTE-35 / teletext /DVB AC-3 / private streams are dropped when you go through
moq pub | relay | moq sub.This issue wires the
Ext(mpegts) catalog through the CLI so a contribution TS feedkeeps its ancillary streams end-to-end. Part of #1799.
Why
This is the only thing standing between the merged #1815 carriage and being able to
actually exercise it from the CLI. Without it the verbatim lane is library-only.
Changes (the library is already generic; this just selects
Ext)rs/moq-cli/src/publish.rs: in thePublishFormat::Tsarm build amoq_mux::catalog::Producer::<moq_mux::container::ts::catalog::Ext>::new(..)and ats::Importover it; changePublishDecoder::Tsto holdts::Import<moq_mux::container::ts::catalog::Ext>. (The other formats keep().)rs/moq-cli/src/subscribe.rs::run_ts: usets::Export::with_ts(self.broadcast, self.catalog)?instead ofExport::with_catalog_format(..)(.with_latencychains).mpegtssection transparently).Acceptance criteria
moq-cli publish ts | relay | moq-cli subscribe --format tspreserves the undecodedstreams (SCTE-35 section PIDs, teletext/AC-3 PES) with original PIDs, PMT descriptors,
and PES stream_ids, matching the feat(moq-mux): generic verbatim MPEG-TS carriage (mpegts catalog section) #1815 library round-trip.
section PID.
Out of scope
Branch
main(additive CLI usage; themoq-muxAPI already merged to main).(Written by Claude)