moq-rs/moq-pub
kixelated 04ff9d5a6a
Add support for multiple origins (#82)
Adds `moq-api` to get/set the origin for each broadcast. Not used by default for local development.
2023-10-12 13:09:32 +09:00
..
src Add support for multiple origins (#82) 2023-10-12 13:09:32 +09:00
Cargo.toml Add support for multiple origins (#82) 2023-10-12 13:09:32 +09:00
README.md Major moq-transport API simplification (#68) 2023-09-15 12:06:28 -07:00
build.rs moq-pub: JSON catalog support, bugfixes (#60) 2023-09-05 15:08:35 -04:00

README.md

moq-pub

A command line tool for publishing media via Media over QUIC (MoQ).

Expects to receive fragmented MP4 via standard input and connect to a MOQT relay.

ffmpeg ... - | moq-pub -i - --host localhost:4443

Invoking moq-pub:

Here's how I'm currently testing things, with a local copy of Big Buck Bunny named bbb_source.mp4:

$ ffmpeg -hide_banner -v quiet -stream_loop -1 -re -i bbb_source.mp4 -an -f mp4 -movflags empty_moov+frag_every_frame+separate_moof+omit_tfhd_offset - | RUST_LOG=moq_pub=info moq-pub -i -

This relies on having moq-relay (the relay server) already running locally in another shell.

Note also that we're dropping the audio track (-an) above until audio playback is stabilized on the moq-js side.

Known issues

  • Expects only one H.264/AVC1-encoded video track (catalog generation doesn't support audio tracks yet)
  • Doesn't yet gracefully handle EOF - workaround: never stop sending it media (-stream_loop -1)
  • Probably still full of lots of bugs
  • Various other TODOs you can find in the code