It’s perfectly acceptable to use the term ‘Video APIs’ to give people an idea of what you’re talking about. I mean, you’re obviously referring to an API that’ll help you add video functionality to a product or website, the same way a payment API lets web stores and apps process transactions. There’s just one problem, though.
Do you mean video-on-demand or live? Are you looking for one-way video streaming, like in a webinar, or two-way video communication, like in a conference call? Perhaps it’s not even streaming you want but editing. In that case, you’ll need an editor. Or are you after a complementary functionality, like adding subtitles or captions?
I’m not trying to make things more complicated. It’s just that there’s a different API for every video type, capability, and feature. Further, sometimes one’s not enough, and you’ll need a bunch of them to get what you need. Confused? Don’t be.
Types of Video APIs
At Kaltura, we split our video APIs into four categories. It makes it easier to relate what someone’s looking for without getting into technicalities unfamiliar to most people whose work doesn’t revolve around video (like ours). Nonetheless, we’ve found that both video experts and complete novices find this breakdown helpful.
Media Management APIs
The first category pertains to video storage, organization, and manipulation. In other words, anything from uploading video files – which, by the way, there’s more than one way to do and a different API for each – to editing and enriching.
Want to create different video thumbnails? You’ll find the API to help you do that under media management too. Add captions and subtitles to make your videos accessible to everyone? Media management is the place. Integrate a smart search into your video library so that it’s easy to find everything? Media management again.
Finally, media management also houses transcoding and encoding APIs. Without getting into specificities on the difference between the two, these two will ensure your videos play beautifully on any device in any format – whether it’s a smartphone or a big-screen TV.
Streaming & Publishing APIs
Setting up a neat video library is great, but media is meant to be watched, not stored. Streaming & Publishing APIs do precisely that – deliver your videos wherever and whenever. For example, so that videos play instantly and don’t buffer endlessly, there’s an API to place cached versions of any video in servers around the globe, also known as a Content Delivery Network (CDN).
But while you don’t want viewers to wait for the video to load, you sometimes want to time its launch or when it’s available. That’s what the scheduling API does. There’s also an API designed to promote your video’s SEO standing.
Media analytics API
Media analytics will tell you all you need to know about the user’s playback experience, as well as bandwidth and usage details. What’s more, you can see your users’ engagement levels, how they interact with your content, and if they contribute any of their own. With Kaltura’s analytics API specifically, you can create dashboards to help you focus on the most relevant data, generate reports, and share this data with third-party apps.
Technically speaking, these aren’t APIs per se, but rather fully-fledged components, ready to embed on any app, website, or service. Perhaps the most popular of them all right now is the Virtual spaces for learning, working, or just hanging out. Other examples include the video player, our recorder that lets users create videos, and the webcasting studio for webinars.
Another interesting component is the monetization one, used to optimize ad delivery, background loading, and stream stitching. And, of course, there are also in-video tests and quizzes built-in with hints, user feedback, and scoring; or on-screen hotspots the user clicks to decide which video will play next or to access more information (either as an outbound link, an overlay, or slider).
It should be noted that while some companies also offer these capabilities as stand-alone components, they are also available as APIs. Whichever one’s ideal for you is essentially a matter of the level of abstraction you’re after.
How Abstract do you want It?
To explain abstraction, I’ll need you to imagine you’re running a restaurant and looking to start a delivery service. One way to do that would be to build it yourself: hire the people, buy or rent dedicated vehicles for them, form a process for taking in orders, and whatnot.
However, you could hire delivery people who use their vehicles. You’ll have to find a way to compensate them for that usage, but at least you’ll save yourself some of the trouble. To make things easier still, you could bring in a dedicated delivery service that’ll manage all that for you. All you’ll have to do is cook the food and hand it over to the delivery guy or girl.
These different scenarios represent different levels of abstraction. In the first one (building it yourself), there’s no abstraction – you’ll have to deal with everything yourself. If you hire delivery people to use their vehicles, you get to call the shots about your staff, but you abstract the decision about what they drive. With a delivery service, you don’t have to worry about any of that and get a trusted solution to do it for you, but you don’t have any say in decisions.
APIs and software also have different levels of abstraction. The higher the abstraction, the less low-level computing you’ll have to handle, but also less room for maneuver. Low abstraction, on the other hand, means more work for you – computing and deciding.
In the case of videos, the higher the abstraction, the more plug-and-play service you’ll get. With an API, you won’t have to sort out things like CMS and CDN. With an experience component, you’ll have even less to worry about. At the same time, high abstraction doesn’t mean you can’t customize the UI and branding.
But Why Not Build Video Yourself?
If you have the resources for it, that’s an option. But here’s why it’s worth considering going with video APIs or components even so.
Go to market Quickly
Trust us: Developing any video capability from scratch is hard work that’s bound to take up your time and money. A lot of it will go on testing and debugging. If someone else has already done that, why not take advantage of it instead of trying to reinvent the wheel? Using API technology, you could launch quicker, which means you can make your users happy faster, leaving your competitors to figure out how they’re going to catch up with you.
It’s not like you’ll build what you need and then forget about it. You’ll have to maintain and improve it over time, just like any other feature. If nothing else, you’ll probably have to bring it up to date once you scale and your user base grows. An API will scale and grow with you. What’s more, there might be other changes you’ll decide to enforce on your product and videos, like monetization. Handling these changes is bound to be more time and energy-consuming. In some cases, it might be unfeasible or impossible.
I keep referring to only two options: building it yourself or using an API. But in fact, often there’s an easier way: embedding a third-party video platform that’ll either play directly on your service or redirect externally. Think of a YouTube video playing on a website, for example, or a CTA that’ll launch an app or SaaS. While that’s a fair choice at times, keep in mind that it’s likely to interfere with your user or customer journey. Worse – it could break it entirely.
So, as long as you want to control that experience and maintain on-brand, tone of voice, and look and feel, it might be best to leave this option alone. And if UX is a top priority for your business, an API can give you that at a fraction of the price of building it yourself.
I’ve mentioned video analytics and data already. Naturally, if you intend to build yourself, you’ll have to develop that by yourself too. If you opt for a video API combined with a video analytics API, you’ll only have to see that you can get your hands on the metrics and insights you care about. It might make the decision-making process harder, but not like building yourself.
What about third parties? Sure enough, some of them will share data with you. However, make sure that you not only get all the data you’re interested in but that you can also access it any time in real-time. It’s about to have major effects on marketing and business decisions, and partial weekly reports that you’ll need analysts to help you decipher aren’t going to cut it.
What developers Should be Looking for
So much for the business case for video APIs. The case for developers is much more straightforward: they offer developers an easy way to add desired functionalities, like hosting a webinar, recording a video, or playing one, without going through the entire development process. Nonetheless, certain factors determine how easy it’s going to be.
RESTful has now become the most common API design interface. While it’s a clear sign of a modern build that’s up with current technology that’s bound to be easier to use, it’s a good idea to dive deeper. Specifically, look for international codes and standards received (or not). For example, the ISO/IEC 27001:2013 tells you that the API meets the strictest information security requirements or one less requirement for your R&D team.
Your product specifications and business needs might be crystal clear. But these are likely to change over time. A content management console that can store and organize videos ticks all the boxes right now, but before long, you might also need the ability to edit and enrich videos, for instance. Many of our customers who started with real-time video conferencing soon found they also want to record sessions and make them available on-demand. It’s impossible to know all that and plan for it in advance. But it’s reasonably easy to check what other features and capabilities a platform has to offer when it’s time to upgrade.
Even the most extensive functionality can’t guarantee you’ll find everything you’re ever going to need out-of-the-box. But open-source technology means developers get a flexible configuration to customize per the product’s or organization’s needs. And with complete control over the code, they can even find what they need elsewhere and add it with no exceptional engineering or additional connectors.
Documentation makes integrating APIs even more uncomplicated than it already is. It’s like a cheat sheet for developers. If it’s comprehensive and well written, that is. While documentation is standard in the industry, developers’ pages designed to get you started quickly, find everything with ease, and debug without a hitch – aren’t. Put these docs inside an intuitive UI, and you got yourself a winner.
Let’s Wrap Up
Audio may be the new kid on the block right now, but it certainly didn’t steal from video’s ever-growing popularity. In the past year especially, its usability and effectiveness were impossible to overlook, either as a burning solution or to improve users’ experience. Naturally, the popularity of video APIs – as an effective and immediate solution to answer businesses’ needs – soared.
Hopefully, you can now be more specific about your business and video needs. Furthermore, you can also size up all the different options to realize them and choose wisely based on available resources, simpleness, and internal considerations and priorities. A word of advice? If, for your business, video is a feature and not ‘your business,’ it’s probably best to focus on your business.
Learn more about our video APIs