Streaming
Streamwell takes RTMP, RTMPS or SRT input streams with H264 video + AAC audio.
The most popular way to stream in is to use OBS, a free open-source video mixer application. If you are new to OBS, here are some quick steps to get you moving.
Once installed, open OBS and bypass any setup wizards.
Add a source like a Webcam (Video Capture Device) or drag a video file in.
Click Settings => Output, and change the Output Mode to Advanced
Set the streaming options as shown below, or leave them as default if not shown (see below for more info on Streaming settings)

Click Settings => Stream, and set the Service to ‘Custom…’
Enter your Server URL under Server, and copy/paste a Stream Key of your choosing for the channel you’d like to stream to. For SRT URLs just copy/paste the full URL in the 'Server' field and leave the 'Stream Key' field blank. For RTMP URLs the server URL is everything up to and including 'live', and the Stream Key is everything after the slash (do not include the "/" in the stream key).

Click ‘Start Streaming’ and you should now be live - hello world!

Whether you are using OBS or another software or hardware encoder, always keep these requirements in mind for the low-latency streaming to function correctly:
H264 Encoder (x264, Apple VT H264 Encoder, NVIDIA NVENC H264)
AAC, OPUS or MP3 audio
Keyframe interval of 1 or 2 seconds (higher interval will cause playback issues)
No B-Frames (use of B-Frames will cause playback issues)
(Optional) 'zerolatency' x264 tuning option
(Optional) 'baseline' or 'main' profile (avoid using 'high' profile)
Set up your Stream encoding settings under Settings -> Output (Advanced Mode)

If you have an NVIDIA GPU, you might see an option for the NVIDIA NVENC encoder which is great for handling the streaming workload without taking as much of your CPU.

On macOS, you might see an option for the Apple VT H264 Software / Hardware encoder, another good option for offloading some of the encoding workload from the main CPU:

You can change your Output Resolution and Frame Rate under Settings -> Video.

Note on Improving Colour Output

Under Settings -> Advanced -> Video, the default colour format of NV12 is optimized for streaming but is not very accurate. This can be improved by switching the colour format to i444, and making sure the colour range is set to 709 Full. This will result in increased CPU / GPU usage but if colour accuracy is a concern, you are likely on a powerful enough rig already.
NDI
For editors and creative professionals using software like Adobe Premiere or Final Cut Pro, see Streaming with NDI for a step by step tutorial on enabling NDI streams to Streamwell.
Mobiles Too!
You can also stream in from a mobile device. There are a number of free applications out there but the best one seems to be Larix Broadcaster which is excellent and free, for iOS or Android devices. We tested a *ton* with Larix during Streamwell’s development, and successfully streamed from a 7-year old iPhone 5S for more than 72 hours straight, stopping only out of boredom and hunger. On iPad, Teradek offers a more full-featured app called Airmix Solo which also works quite well, plus a paid version.
Hardware: It’s the Hard Truth
Finally, any hardware encoder which supports RTMP can send in a stream. For years we have used off-the-shelf encoders which are now easily found on Amazon from companies like Uray. We find them to offer a ton of value, matched only by the latest ATEM offerings from Blackmagic Design. Additionally, encoders from Magewell, Teradek, DataVideo or Epiphan would be fine choices. If you are serious about live streaming or high quality transmission, a hardware-based encoder fed a signal from a video camera or playout feed is the way to go.
Last updated