惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
Spread Privacy
Spread Privacy
T
The Exploit Database - CXSecurity.com
Simon Willison's Weblog
Simon Willison's Weblog
P
Privacy & Cybersecurity Law Blog
L
LINUX DO - 热门话题
T
Threat Research - Cisco Blogs
T
Tenable Blog
TaoSecurity Blog
TaoSecurity Blog
Security Archives - TechRepublic
Security Archives - TechRepublic
AI
AI
P
Proofpoint News Feed
A
About on SuperTechFans
P
Privacy International News Feed
月光博客
月光博客
雷峰网
雷峰网
S
Secure Thoughts
博客园 - 叶小钗
博客园 - 聂微东
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Project Zero
Project Zero
The Cloudflare Blog
SecWiki News
SecWiki News
The Hacker News
The Hacker News
V
Vulnerabilities – Threatpost
罗磊的独立博客
A
Arctic Wolf
阮一峰的网络日志
阮一峰的网络日志
Know Your Adversary
Know Your Adversary
酷 壳 – CoolShell
酷 壳 – CoolShell
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
T
Troy Hunt's Blog
The Last Watchdog
The Last Watchdog
Schneier on Security
Schneier on Security
小众软件
小众软件
有赞技术团队
有赞技术团队
博客园 - 司徒正美
T
Tailwind CSS Blog
量子位
C
Cybersecurity and Infrastructure Security Agency CISA
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Hugging Face - Blog
Hugging Face - Blog
人人都是产品经理
人人都是产品经理
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
S
Security @ Cisco Blogs
大猫的无限游戏
大猫的无限游戏
S
SegmentFault 最新的问题
Apple Machine Learning Research
Apple Machine Learning Research
宝玉的分享
宝玉的分享
L
Lohrmann on Cybersecurity

ImageKit.io Blog

Next.js Image Optimization with ImageKit Use Video as a Background in Your Next.js Project How to Fix Autoplay Video in Next.js How Durian Scaled a Visual-First Retail Experience to 350K Monthly Visitors Online How Matsmart accelerated image delivery across countries with ImageKit AI in Digital Asset Management: From Smart Workflows to Agentic Automation How Joseph Joseph unified and secured global video delivery with ImageKit How Modall powers fast, effortless media delivery across 40+ projects with ImageKit Digital Asset Management (DAM) Trends: 2026 Report How to add a poster image to Video.js player (and automate it) HLS streaming with Video.js + React Building the future of storytelling with fast, AI-powered video delivery How PushOwl delivers 100M+ image-rich notifications seamlessly with ImageKit How Homify delivers millions of interior design images seamlessly with ImageKit Better event discovery with lightning‑fast videos & images Adding video player in React Native Video player in Angular applications Crop and resize videos in React Next.js image and video upload React image and video upload React video optimization How we quadrupled our traffic to 625K monthly page views How Apollo 24|7 boosted performance & reduced costs with ImageKit Simplify your media workflows with ImageKit DAM integrations Extending Lighthouse for custom image and video optimization analysis Brand Asset Management: What is it? How does it work? WordPress Digital Asset Management Guide - Manage your WP media assets better Why Shopify retailers need a digital asset management solution DAM vs. SharePoint: Which is best for you? AI-powered Metadata and Tagging in Digital Asset Management How Hopscotch built India's largest online Kids' fashion brand with ImageKit Dropbox Vs. DAM: Which Is The Right Tool For Digital Asset Management Digital Asset Management for Photographers: A Complete Guide Why digital asset management for agencies is essential Helping both Top and Bottom Line: SaffronStays rapid, profitable growth with ImageKit How KreditBee simplified media experiences with ImageKit Google Drive alternatives for businesses (with fast-growing teams) Node.js image upload ImageKit: The Secret Ingredient in Swiggy’s Expansion Journey Streamlining the Design Approval Process: A Comprehensive Guide AV1 Codec - Complete guide for video application devs PHP image and video upload Angular image & video upload AV1 vs VP9: Which codec should you choose? Adding video player in Next.js React Video Player VP8 vs VP9 - In the context of online video delivery Exploring WebM vs MP4 7 Free Digital Asset Management Software that are not Open-Source Comparing 9 Top Digital Asset Management Tools in the Market What are Brand Standards and Why do they Matter? Boost Sales and Brand Appeal: Essential Tips for eCommerce Image Management Brand Recall: The Strategy to Create Unforgettable Brands How to upload files in HTML? Branding for Small Businesses (2025 Edition) Everything you need to know about VP9 codec Recent updates from ImageKit and what's next Best Ways to Write RFP For Digital Asset Management (+ with free RFP template) What is Brand Dilution? How to Avoid It? Explained with [Examples] The Importance of Brand Identity: Leveraging Digital Asset Management for Impact From Launch to Scale: How to Launch a Brand Campaign Digital Asset Management Requirements - What do You Need to Evaluate and How? Marketing Collateral Management: A Quick End-to-End Guide Video Content Management System: What Is It And How To Choose One? Dropbox vs. Google Drive vs. Onedrive: The Best Cloud Storage Solution How to Build Brand Trust: Get Started In 2025 Google Drive vs. Box: A Detailed Comparison How Digital Asset Management Solutions Help Protect Brand Equity A DAM Solution Can Safeguard Your Digital Intellectual Property - Here’s How WebP Vs. PNG: Which Image Format Should You Use and Why? How to Resize Images in Bootstrap Easily Progressive jpegs (PJPEG): the key to loading images faster on your website Dropbox vs. Google Drive: The Best Cloud Storage For Digital Assets Dropbox Pros & Cons In 2024: An In-Depth Analysis and Why A DAM Solution Stands Out Google Drive Vs OneDrive: The Better Storage Option For Digital Assets Manage your video assets better with video metadata Understanding DAM's Role in Strengthening Brand Identity Digital asset management strategy: What to know before creating one The Ultimate Guide To Marketing Agency Onboarding 6 Solutions To Simplify Large File Sharing Over The Web A Step-by-Step Breakdown of a Video Production Workflow 13 Digital Asset Management Use Cases You Should Know How to Conduct a Brand Audit and Manage Your Brand Assets Costly Consequences of Inconsistent Branding And How DAM Can Help Dynamic Asset Transformation: What It Is, Why You Need It, and How ImageKit Can Help Everything You Need to Know About HTML Video Autoplay How To Select Your DAM Vendor: A Complete Guide How to Boost User Experience with Smart Digital Asset Management React Image Optimization: A Guide for Web Developers Why Should DAM Be A Part Of Your MarTech Stack? Unleashing the Power of Content Repurposing with ImageKit MKV vs MP4: Which Video File Format Is Better for Your Needs? Digital Asset Management For Ecommerce: A Complete Guide How an Image Tagging Software can Transform Your Image Search How to Manage Your Content Lifecycle Effectively M4V vs MP4: Which Video Format Should You Use and Why? Why Every Business Needs An Image Management System All The Questions To Ask During A Dam Demo Which is the Best Image Format for Your Website? Uploading Multiple Files Using JavaScript: A Comprehensive Guide
A detailed introduction to Video Streaming API
Rahul Nanwani · 2022-10-17 · via ImageKit.io Blog

Video is now the go-to medium of content consumption on the internet. We can see video taking center stage on all social media and streaming platforms. If not already working on it heavily, content and e-commerce businesses are introducing videos as a key content form they produce. Videos combine visuals, audio, and text to create content that's easy to comprehend and has high retention, resulting in higher user engagement, which means higher revenue and customer retention for a business.

What is video streaming and why is it important?

While videos are a great form of content for all the above reasons, they present a challenge in processing and delivering an optimized experience on the end user's device. Videos are large in size, and the playback time can vary from a few seconds to several minutes. A 30-second video shot using a modern camera phone can easily be over 100MBs.

Traditionally, when loading content on the internet, the entire file is downloaded and displayed on the user's device. However, with 100MB files, that's not the right approach. The user would spend several seconds before the video could even start playing.

At 100MB file size and a 1MB per second download speed, you will wait 100 seconds before the video starts playing.

Video streaming is the continuous transmission of data in smaller chunks to the user's device so that the player can play the video segment available with each chunk. The original large video file remains on a remote storage or server, and only the smaller chunks of shorter duration are downloaded on the user's device.

When the same 100MB video is divided into 20 chunks of equal size, the video playback can now start in 5 seconds.

While the first chunk plays, the second gets queued for download, and so on.

As a result of video streaming,

  1. We can offer a better experience for our users with a quick video start time. A happier user means better retention and conversions for a business.
  2. Less wastage of bandwidth for the user as only smaller chunks are being downloaded, and if the user doesn't watch the whole video, then not all the chunks will get downloaded. This also reduces data transfer costs for the business serving the video content.

Adaptive Bitrate Streaming

Adaptive Bitrate Streaming is a kind of video streaming where each smaller chunk of a video is encoded at multiple bitrates. Lower bitrate means smaller video size.

With chunks available in different sizes, the video player can now adjust which one to load depending on the user's network quality. Users on a poor network get a lighter, low-resolution video. The player can load a better, high-resolution video as the network improves. This technique is similar to what you might have seen on Youtube or Netflix, where the video quality or resolution adjusts to your network speed.

Video streaming API is a programming interface that takes an original single video file as an input, divides it, and encodes it into smaller chunks as output that are ready for streaming. Optionally, the video streaming API can host the streaming chunks and deliver the video stream to the end user using a content delivery network.

Depending on the kind of content, video streaming APIs can either be Video-On-Demand (VOD) or live streaming video APIs.

1. Video-On-Demand (VOD) streaming API

VOD streaming APIs use a pre-recorded video as input, in a format like MP4 or MOV, and then encode it to get it ready for streaming using popular streaming protocols like DASH and HLS.

2. Live Streaming Video API

A live streaming video API gets its input from the video feed of a live event and then streams it to the users. The underlying technology for live streaming video APIs can either be WebRTC or HLS, depending on the desired latency and the number of users you need to cater. WebRTC is for low-latency, low-user count, whereas HLS is for slightly higher latency but several thousands of users simultaneously.

Factors to consider while selecting a video streaming API

Video Streaming is complex. You need to know about different video formats, streaming protocols, codecs, audio streams, different devices, and more to build a video streaming service on your own. Therefore, using an existing video streaming API for your business is almost always advisable.

Before selecting a third-party video streaming service, you need to consider the following items.

1. Feature support

You need to decide if you need video-on-demand or live streaming support. For video-on-demand streaming, you need to consider the input and the output formats you need to support, whereas, for live streaming, you need to consider the number of live users and the latency you can afford for your use case.

2. Ease of integration

You don't want to turn your existing video setup or the video upload process upside down to be able to use a streaming service or to go through a steep learning curve and several different steps to do so. The video streaming API should be easily integrable with your existing infrastructure and work with your existing video storage.

A good API will use standard defaults for different streaming options that result in a good streaming experience while allowing you to play around with different options to customize the streaming experience even further if needed.

3. Processing times

When building a video streaming experience, you wouldn't want the users who upload the videos to wait ages for their video to get processed and ready to use. Imagine uploading a video post on Instagram and waiting several minutes for it to get published! You should therefore look for a video processing API suitable for your business requirements and provide the output in seconds, if not in real-time.

4. Video Hosting and Management

If you are just getting started with video streaming, you would need access to an extensible cloud storage to store the videos you upload and the streaming segments generated for it. This storage should be usable on the web, like AWS S3, Google Cloud Storage, etc.

Many streaming APIs rely on you to manage the storage, whereas some good ones integrate with video storage and manage it for you. While this is optional, having an integrated video hosting solution simplifies the entire integration by reducing the number of components you must consider.

5. Video delivery using a CDN

Again, a purely optional requirement, but the end goal of encoding your video for streaming is to deliver it to your users. The video delivery needs to happen over a content delivery network or a CDN to ensure fast load times for your user globally. Therefore, if the streaming API comes integrated with a video CDN, it simplifies your setup while ensuring a world-class experience for your users.

6. Supporting APIs for video streaming

Apart from the main video's streaming itself, there are a lot of other actions you would need to take to build a complete, well-rounded video streaming experience. For example, you would need to create a video thumbnail or maybe a short video preview to show your users.

You might also need to add captions to the videos or need a customizable video player for your requirements. While these things can be built outside the streaming service, depending on your business requirements, it might be beneficial if the streaming service also provides these supporting APIs.

Video Streaming API by ImageKit

ImageKit is a cloud-hosted, complete media management and optimization product. It provides a real-time video streaming API that works with small URL changes and gets you up and running in no time. Even if you have really short videos that won't benefit from Adaptive Bitrate Streaming, ImageKit provides several other format optimizations, compression, and real-time video transformations to help you deliver perfect videos to your users.

And the best part is that ImageKit also comes with integrated video hosting, thumbnail creation API, video trimming APIs, and a global integrated CDN by AWS Cloudfront for super fast video delivery. You can also use it for the images on your websites and apps, making it a single product for all your media delivery and hosting requirements.

There are two ways of using ImageKit. You could either upload the video to ImageKit's integrated hosting called the Media Library or connect your existing storage like AWS S3, Google Cloud Storage, or Azure Blob Storage, amongst others. These videos are then accessible via an ImageKit URL that you can use on websites and apps along with the integrated CDN.

Let's look at how quickly we can set up Adaptive Bitrate Streaming with ImageKit.

Adaptive Bitrate Streaming with ImageKit

ImageKit offers Adaptive Bitrate Streaming using both DASH and HLS streaming protocols. To get your streaming set up, you just need to make a small URL change to your video URL. This is unlike other tools that require you to send your data to the service provider, set up webhooks, and understand all the complex API parameters.

We have uploaded a video to the integrated video hosting for this example. You can access the demo video here -

https://ik.imagekit.io/ikmedia/video_demo/test-video.mp4

Note: You could have also integrated your external storage like AWS S3, Google Cloud Storage, Azure Blob Storage, and more to stream videos stored in these object storages.

The above URL is ready to load an optimized video over a CDN, but it is still not ready for ABS. Let's see how we can do that.

Using HLS for Adaptive Bitrate Streaming with ImageKit

Adaptive Bitrate Streaming requires us to create a manifest file you can load into a video player. To create an HLS manifest file, you must add ik-master.m3u8 at the end of your video file URL and specify the representations you want for this stream.

For example, to create a video stream with 360p, 480p, and 720p, the above URL will change to -

https://ik.imagekit.io/ikmedia/video_demo/test-video.mp4/ik-master.m3u8?tr=sr-360_480_720

When accessed for the first time, ImageKit will automatically start transcoding your video into different resolutions in the background and return the manifest file for HLS streaming.

We can load the above URL directly in a video player supporting HLS streams, and our adaptive bitrate streaming setup is ready! We can see in the screenshot below that the browser first started with a couple of 360p video segments for a fast load time before switching up the resolution to 720p because the user's device could load a higher resolution video.

Since generating manifests with multiple resolutions for ABS can take slightly longer than other real-time video optimizations and transformations, you can use video webhooks to listen to events indicating the completion of this transcoding process. Unlike AWS's native tooling, these video webhooks are optional and meant to enhance the developer experience. You can still offer adaptive bitrate streaming on your apps without using them.

Supporting APIs for video streaming in ImageKit

ImageKit also offers a URL-based API to generate video thumbnails from any frame of the original video and to generate a shorter video clip from any part of the video. Again, these APIs do not require extensive setup, just a small URL change.

For example, to get a video thumbnail from the 8th second of our sample video, the URL changes to -

https://ik.imagekit.io/ikmedia/video_demo/test-video.mp4/ik-thumbnail.jpg?tr=so-8

Here so stands for start offset, or the number of seconds from the beginning of the video to capture the thumbnail.

Thumbnail captured from the 8th second of our video using real-time video transformation API
Thumbnail captured from the 8th second of our video using real-time video transformation API

You can combine this with other real-time image transformations offered by ImageKit like width, height, overlays, and more to get this video thumbnail set for your requirements.

The streaming manifest generated by ImageKit's ABS API can work with any video player. So you are free to use ImageKit with your existing video player or pick an open source like video.js and use it on your website.

Real-time optimizations and transformations without ABS using ImageKit

You might have really short videos that would not benefit from the network "adaptation" provided by adaptive bitrate streaming. Or you might want to keep your setup simple to be able to play a video file from its URL without needing a dedicated video player.

This is also something that ImageKit can help you with. Every video, either uploaded to ImageKit or in a connected storage, is accessible using a URL. Apart from Adaptive Bitrate Streaming, ImageKit offers several other real-time video optimizations and transformations that you can apply to your videos directly from the URL.

For example, we can optimize the video to a lighter WebM format, convert it to a vertical video and add our logo as a watermark, all from the URL.

https://ik.imagekit.io/ikmedia/video_demo/test-video.mp4?tr=w-400,h-640,l-image,i-logo_HuFO6vJ2x.png,lx-10,ly-10,w-100,l-end

Conclusion

Video streaming is an efficient way of loading large videos on a user's device and ensuring fast playback. With Adaptive Bitrate Streaming, you can adapt to the user's network speed and provide a good streaming experience globally.

Selecting a suitable video streaming API is crucial. It should fit your requirements, have quick response times, be easily integrable, and take care of critical aspects like video hosting and delivery.

ImageKit's video API is one such API that provides real-time URL-based adaptive bitrate streaming and video transformation APIs, along with an elaborate digital asset management system and a CDN. You can integrate it with your existing infrastructure and get started in minutes.

ImageKit also offers a generous free tier with 600 seconds of free video processing, 5GB of video storage, and 20GB of data delivery in a month.

Get started with our forever our free plan.