अहम् ब्रह्मास्मि ।

I am the infinite reality.

#337 was born out of the desire to make viewing and sharing Javis generated animations in a much more flexible fashion. This feature brings in two new ways of sharing animations:

  • Dump to a local network and viewed using any tool that can read from a network stream.

  • Stream directly to platfroms like twitch.tv (WIP)

The streaming process is handled by ffmpeg.

We make use of Julia's @async macro to stream asynchronously to avoid holding up the julia shell. The streaming can be terminated by using the cancel_stream() method.

Setting up streaming is a simple process:

  • Defining the stream configuration object

# for a local stream
stream_conf = setup_stream(:local)

# for twitch stream
stream_conf = setup_stream(:twitch, <TWITCH STREAMING KEY>)
  • passing the configuration object to the render function.

# for a local stream
render(vid, streamconfig=stream_conf)

Local streams can be read by tools like OBS Studio, ffplay, VLC or any similar software.

Setting up OBS to receive streams from Javis.

Learn more about livestreaming in Javis here.