A Non-Video Engineer’s Guide to Live Streaming Video TermsAugust 16, 2019
I am in full-on, maximum-absorption sponge mode as I learn a new technology, a new developer community, and — last but not least — a new company. I recently joined Wowza Media Systems as the director of developer relations, which means I need to hit the ground running… or perhaps “DO IT LIVE.” I’ll stop now, only if you promise to stop with the Wowza-based dad jokes.
So far, it hasn’t been as overwhelming as it could be, but with planning for the next quarter already in the works, I’m going hands-on with my learning as fast as I can. By week three, I had already broadcast a live stream from the API with Wowza Streaming Cloud and the GoCoder App. Sound interesting to you? Follow the instructions here.
I’m all about learning in public, so I figured I’d put together a list of video and live-streaming terms that just didn’t stick in my brain the first few times… Chances are, you’re in the same boat. Or maybe I’ll confuse you even more, who knows!
Broadcast a live stream with these API calls.
This is the verb you want to use when you get your stream up and running to be visible to your viewers. I always want to think of this as a noun like a radio or tv show, but that’s not quite right in this context.
Playback was so nice I almost felt like I was there!
Week 2 and so far my biggest hurdle is my own brain. “Playback” really just means play in the video world.
But it’s playback.
Which is really just the act of playing.
— Amara Graham (@MissAmaraKay) July 16, 2019
I’m almost embarrassed to admit I’ve been so hung up on this one.
Playback (noun) = Play (verb)
I want to make playback some kind of retrospective, and that’s probably from IBM Agile terminology. Playback was something you did at the end of an iteration to review what went on during said iteration.
But in the live-streaming video context, it’s just the video playing or the experience while the video was playing.
You can play the stream and see smooth playback.
Codec (Lossy and Lossless)
I know the term codec from working with audio processing and trying to just get things from OBS into YouTube or Twitch. And by know, I mean I would read the documentation for what was accepted codec/format-wise and try to make sure I never had audio or video in an unsupported codec.
A codec results from encoding hardware (like a physical appliance) or software that compresses audio and video into a file format for transmission and then decodes the file so it can be played. Simply put, it’s an algorithm.
Still with me?
Similar to when you zip files to send them to your coworkers because your PowerPoint contains too many GIFs, you can’t expect your 4K video to seamlessly fly across the internets in the same, giant format that you captured it.
There are two kinds of codecs, lossy and lossless. Lossy codecs are typically used in streaming since they are smaller. Lossless codecs are used in storage and archiving media. Don’t you like making sure your things are pristine and in their original form before you store them away? Same.
Multicasting vs. Simulcasting vs. Re-stream
Broadcasting one stream from a server to multiple destinations on a network in a single transmission is referred to as multicasting.
You can re-stream from a multicast address, but this is a re-broadcast and it’s not really live.
Simulcasting is broadcasting across multiple platforms like Facebook Live and a web page, all live at the same time.
I just remember watching Football and hearing “Simulcast in SAP” when I was a kid. Same video, but the audio is different for the Spanish-speaking audience.
Watch me continue to try to use these interchangeably and ruin my street cred.
Transcode vs. Transmux vs. Transrate
Transmuxing (transcode-multiplexing) is converting to a different container format, but keeping the file contents the same. This is important for supporting a variety of different playback types.
Transcoding involves taking a compressed/encoded file and decompressing/decoding it to alter in some way. This can include converting from one codec to another, as well as transrating and transizing.
Transrating is the process of moving from one bitrate to another without necessarily changing the file format. Think of this move as going to a lower bitrate for file transfer.
Transize can also be included here, think of it as adjusting the resolution.
All of these are crucial during the live-streaming process to give viewers on a variety of devices the ability to watch the video. These steps have to happen quickly and efficiently, so no one gets stuck behind in the spoiler danger zone.
There are definitely more terms out there, but these are great places to start as you learn the fundamentals. What’s super cool is that Wowza has a glossary! If you ever get stuck on terminology, its a great place to go. Keep in mind that not every term is defined there… yet.
Totally lost on the whole live streaming video thing? This multi-part long read pulls it all together nicely.
Originally published on dev.to.