Skip to content

Latest commit

 

History

History
104 lines (77 loc) · 2.3 KB

README.md

File metadata and controls

104 lines (77 loc) · 2.3 KB

iroh-livestreamer

Stream video between nodes.

This uses Media over Quic to transfer mp4 streams over iroh-net QUIC connections.

Usage

This tool needs ffmpeg and ffplay. Make sure that these are installed.

Publish a video stream from your camera and default audio input:

$ cargo run --release -- pub
Accepting direct subscribe requests on URL:
iroh:nodeaa../dev

Subscribe to a video stream and play it in a window:

$ cargo run --release -- sub iroh:nodeaa../dev

Run a relay

$ cargo run --release -- relay
...
Relay URL:
iroh:nodebb../

Publish to a relay and do not accept direct connections:

$ cargo run --release -- pub iroh:nodebb../mystream --no-accept

Subscribe to a stream from a relay works the same as subscribing to a publisher directly:

$ cargo run --release -- sub iroh:nodebb../mystream

Overview:

$ cargo run --release
Commands:
  pub           Publish a video stream
  sub           Subscribe and play a video stream
  relay         Run a relay
  pipe-loop     Local pipethrough through direct pipe
  network-loop  Local pipethrough through iroh-net
  help          Print this message or the help of the given subcommand(s)

Options:
  -s, --secret-key <SECRET_KEY>
  -h, --help                     Print help

$ cargo run --release -- help pub
Publish a video stream

Usage: iroh-livestream pub [OPTIONS] [RELAYS]...

Arguments:
  [RELAYS]...
          Relays to publish to (must be cast tickets)

Options:
  -i, --input <INPUT>
          Input

          [default: camera]

          Possible values:
          - camera:  Camera and default audio
          - desktop: Desktop and default audio
          - stdin:   Receive a video file from stdin

  -n, --no-accept
          Do not accept direct connections and only publish to relays

  -h, --help
          Print help (see a summary with '-h')

$ cargo run --release -- help sub
Subscribe and play a video stream

Usage: iroh-livestream sub [OPTIONS] <URL>

Arguments:
  <URL>
          Iroh URL to video stream

Options:
  -o, --output <OUTPUT>
          [default: ffplay]

          Possible values:
          - ffplay: Render with ffplay
          - mpv:    Render with mpv
          - stdout: Pipe mp4 to stdout

  -h, --help
          Print help (see a summary with '-h')