Raw uncompressed video files are huge data behemoths, but you can watch films over your regular internet connection in high-definition just fine, and that’s because the data has been encoded.
Encoding is part compression and part making a video as universal as it can be
by creating compatibility with as many devices as possible.
Video (and we’re including audio and graphics here too) needs to be converted in order for it to be compatible with most potential outputs, and that’s where an encoder comes in. How you choose to encode your data will depend on the output, as with all conversions it’s a tradeoff and balancing act between file sizes, compatibility and quality.
Note: Dacast have a really nifty Video Encoding Glossary which you might want to bookmark to help with some of the definitions, if you’re unsure.
To Encode Your Streaming Data
All you really need to know if you’re just getting started is that an encoder will translate and communicate your media (audio, video, graphics) in an appropriate format for your desired output.
If you’re streaming video online, your viewers will need to have fast-enough bandwidth to be able to watch it without issues. The aim is usually to match your output to the average viewer’s setup – the higher your bitrate, the more bandwidth your audience needs to be able to view it properly.
Most encoders use RTMP (real-time messaging protocol) or HLS (HTTP live streaming) formats. The latter cuts up videos into smaller chunks to transmit quicker and is the most common way to live-stream now due to their specifications being more easily modified – they’re also considered faster and more reliable than other methods. You can read more on this in Dacast’s What is HLS Streaming and When Should You Use It article.
Let’s take a look at some of the options you have when it comes to encoding your video data for streaming.
The great news is that most software packages that are designed for streaming come with encoders as part of the application. There are quite a lot of options for this, but two of the most popular are Open Broadcaster Software Studio (OBS Studio) and Streamlabs OBS. Generally software encoders in popular streaming and recording suites will have the same or similar options, so we’ll just look at OBS Studio to keep it simple.
Most users who want to stream will be using an x264 encoder (which uses lossless compression) and within OBS Studio you can select that option and then modify it, changing presets to get a good overall balance for your needs. The temptation is to go for the best possible settings, but there are two problems with that, the first is as mentioned earlier that your viewer might not be able to handle that on their bandwidth, and the second is that your own computer might not, either.
While the general idea is that the harder you work your machine the better the quality, that can cause your encoder to spend a long time compressing frames and slow everything down to unworkable levels on the average computer.
OBS Project have a great article about choosing your encoder settings, including some comparisons of how the various options look with the same source video and bitrate.
The article also looks at bitrate specifically – how much information you have in each part of your video. A greater bitrate generally improves the look of your video. Changing the bitrate is another part of the balancing act, you can up your it and still have relatively low CPU use by choosing a particular preset that squeezes more information into each frame and disregards information that isn’t essential.
Where to Find Encoding Options in OBS
In OBS Studio, if you go File > Settings > Output the Output Mode will be set to Simple by default, which produces the following options:
If you have a little more knowledge about what you’d like to change, you can flip Simple to Advanced which will bring up more options.
If you’re planning to stream and also record your stream at the same time, then you’ll likely need the advanced options as you can then choose to stream and record at different resolutions and even choose a different encoder for each, though it’s worth bearing in mind that this will have a greater impact on your CPU, so again it’s all a balancing act.
When you set up OBS Studio it will automatically configure your settings to the best available based on your computer and setup. If you’ve changed settings and don’t know what your best options are, don’t panic, you can ask it to re-configure again. Just go to Tools > Auto-Configuration Wizard.
You can buy a hardware encoder specifically for streaming and recording, which will do the same job as described in the software encoder section: compress and convert your data into an appropriate format.
Why Use a Hardware Encoder
A hardware encoder is a physical processing tool built for one job, to convert your stream or broadcast into an appropriate format. In this respect, a hardware encoder – and they come in various guises with appropriate price tags attached – should give you a good, consistent performance at faster speeds.
Hardware encoders can be small, cheaper devices that will have a dedicated purpose; streaming to one destination like YouTube or Twitch for example. They can also be a lot more heavy-duty, with the option to accept lots of different video input types and let you stream to numerous platforms. How many streams they can encode at once is a factor in price too, as it takes more processing power to have streams simultaneously encoding. Other factors are things like bitrate, framerate and compression, as we touched on in software encoders.
A hardware encoder needs a little more work in the setup than a software encoder, as it’s only one link (albeit an essential one) in the chain. There are too many options to go into in one overview article, but the best advice we can give is to know what you need or want your hardware encoder to do, and make the best choices based on that – otherwise it’s a little like ‘how long is a piece of string’ in terms of your options. Epiphan Video has a more in-depth breakdown on the main features of hardware encoders that you might want to consider when choosing one, things like the type of video and audio inputs, UI controls, and live production options.
Hardware or Software Encoder?
Unless you’re a professional broadcaster putting out lots of high-quality streams to multiple sources, then you’ll most likely be better off with a software encoder. At the very least, it’s sensible to start out with a software encoder (as part of a streaming suite) and then upgrade that to a hardware encoder if you start to hit limitations.
A software encoder is only as good as your computer specs and internet connection, though, so keeping your computer running in top shape is probably overall more cost-effective than buying a hardware encoder. Here’s an ‘idiot’s guide’ to their best and worst features.
- Free as part of open-source software like OBS Studio
- Auto-configure settings make setup and streaming quick and easy
- You can tweak settings depending on your knowledge level
- Limited by computer performance
- Often slower (usually due to the previous point)
- Dedicated to one task and so not limited by CPU usage on other tasks
- Usually faster than software encoders (due to the point above)
- Little room for adjustment once you have it, updating usually means buying a new encoder
- Can be very expensive for a good one
What to get rid of and what to keep is the age old problem, whether you’re compressing photographs, video, or audio, it’s all the same balancing act between size, quality and compatibility.
While tempting to always go for the options that result in the best quality, this isn't always the route you should take, as you may run into problems with your own CPU struggling, or your viewer seeing something almost unwatchable because their internet connection can't keep up. The key to choosing the right setup and settings is to know what you want your desired output to be and to work backwards from there, taking into account your setup and that of your (average) audience.
More Video Resources From Envato
Read the Envato Video Marketing Guide
Boost your video marketing skills with our comprehensive guide: you'll learn some useful skills to improve your next video.
Download Free Video Assets From Mixkit
Make a Motion Graphics Video Online With PlaceIt
You don't need professional software to create visually-appealing videos, you can make them right in your browser: PlaceIt is an online service with a video maker uses professionally-designed motion graphics templates.
Envato Elements: Unlimited Downloads
Envato Elements offers millions of stock items: photos, music, video clips, fonts, video project templates for After Effects, Premiere Pro, Final Cut Pro and Motion, and creative courses from Envato Tuts+, all with a single subscription.
More Livestreaming Resources
Envato Tuts+ tutorials are translated into other languages by our community members—you can be involved too!Translate this post