Very Good FFmpeg
How it worksPricingDocsBlog

Published Jun 10, 2026

Azure Media Services Retirement Alternative Video Transcoding 2026

Azure Media Services retired June 2024. Compare alternative video transcoding options for 2026: Bitmovin, self-hosted FFmpeg, AWS Elemental, Google Transcoder, and Very Good FFmpeg.

Azure Media Services (AMS) shut down on June 30, 2024. Microsoft archived the documentation with NOINDEX and NOFOLLOW tags. The encoding endpoints, dynamic packaging, streaming endpoints, and content protection services all stopped. Developers who built video pipelines on AMS lost their core processing layer.

Yet in 2026, the Azure Media Services tag on Stack Overflow still has over 800 questions. Developers are still searching for answers. If your team used AMS and you are now looking for a replacement, this article covers what happened, what still works, and how to choose a new video transcoding provider.

Key takeaways: what you need to know about the AMS retirement

Here is the short version of the situation in 2026.

AMS is fully retired. The docs are archived and blocked from search engine indexing. No new accounts were allowed since early 2024.

Your video files are safe. AMS stored assets in standard Azure Blob Storage containers. The blobs survived. The encoding and streaming layer is what disappeared.

You have three paths for replacement:

  • Hosted transcoding API (Bitmovin, Very Good FFmpeg, AWS Elemental MediaConvert, Google Transcoder API)
  • Self-hosted FFmpeg on your own infrastructure
  • Alternate cloud service with equivalent encoding capabilities

For most teams leaving AMS, a hosted FFmpeg API is the simplest swap. You send videos, get encoded output, and pay for what you use. No servers to manage.

What was Azure Media Services?

Azure Media Services was a cloud platform for video processing and delivery. It handled video encoding, packaging, streaming, and content protection. Developers used it for video-on-demand transcoding, live streaming events, and multi-DRM video delivery.

AMS stored all video assets in standard Azure Blob Storage containers. Encoding jobs used built-in presets like H.264 Adaptive Streaming, H.265 Content-Aware Encoding, and multi-bitrate outputs. Microsoft charged per-minute for finished encoding jobs only. Cancelled or errored jobs did not incur charges.

The platform also included dynamic packaging (converting a single set of encoded files into multiple streaming formats like HLS and DASH), streaming endpoints for delivery, and multi-DRM content protection supporting PlayReady, Widevine, and FairPlay.

Why did Microsoft retire Azure Media Services?

Microsoft retired AMS as part of a broader strategy to focus on core cloud infrastructure. The company decided to push video processing to its partner ecosystem instead of maintaining a first-party media services platform.

The official retirement guide directs AMS customers to Microsoft partners such as Bitmovin, Eyevinn, and Happiest Minds. Microsoft stated this move supports "secular growth and long-term competitiveness plans." In practice, Azure remains the underlying cloud provider while partners deliver the video-specific features.

The retirement was not sudden. Microsoft announced the deprecation well before the June 2024 deadline, giving teams time to plan migration. However, the staggered shutdown caught many developers off guard.

What actually stopped working when AMS retired?

Every encoding, packaging, and streaming endpoint was decommissioned on June 30, 2024.

Specific services that stopped:

  • Video on demand encoding (all presets including H.264 Adaptive Streaming and H.265 Content-Aware Encoding)
  • Live streaming encoding and channel management
  • Dynamic packaging (conversion between HLS, DASH, and Smooth Streaming formats)
  • Streaming endpoints (delivery URLs for playback)
  • Content protection with multi-DRM (PlayReady, Widevine, FairPlay, AES-128)
  • The Media Player component

Microsoft also blocked new AMS account creation before the official deadline. Developers who tried to create accounts through the API, CLI, Terraform, or Portal in early 2024 received 400 Bad Request errors. The error message stated: "Creation of new Media Service accounts are not allowed as the resource has been deprecated."

The archived documentation now carries ROBOTS: NOINDEX, NOFOLLOW headers. Microsoft does not want search engine traffic going to AMS pages.

Are my old video files gone?

No. Your video files are not gone.

AMS stored all assets as MP4 files inside standard Azure Blob Storage containers. The retirement shut down the encoding and streaming layer, but the storage containers remain accessible. You can download your files directly through Azure Storage APIs, SDKs, or the Azure Portal.

This matters because you do not need to recover lost data. Your back catalog of source videos and previously encoded outputs is still in your Azure account. The migration task is about replacing the encoding pipeline, not recovering media.

Some alternatives, including Bitmovin, offer migration tools that can read directly from your existing Azure Storage containers without requiring a re-encode of your entire library.

What are my options for replacing AMS video transcoding?

You have four main paths for replacing Azure Media Services.

Hosted transcoding API

A hosted API accepts video files through HTTP requests and returns encoded outputs. You do not manage servers or maintain FFmpeg builds. These services handle infrastructure, scaling, and queue management.

Options in this category include Very Good FFmpeg, Bitmovin, AWS Elemental MediaConvert, and Google Transcoder API. They differ in pricing model, flexibility, and feature scope.

Self-hosted FFmpeg

FFmpeg is the open-source transcoding engine that powers most hosted solutions. You can run it on your own virtual machines or Kubernetes cluster. FFmpeg 8.1 "Hoare" was released in March 2026 with support for Vulkan compute-based codecs, hardware encoding, and a broad codec set including H.264, H.265, AV1, VP9, and ProRes.

Self-hosting gives you full control with no vendor lock-in. The trade-off is operational burden. You need to provision servers, handle scaling, monitor job queues, store outputs, and maintain the deployment. Video transcoding is compute intensive, so infrastructure costs can grow quickly without optimization.

Alternate cloud service

AWS Elemental MediaConvert and Google Transcoder API are direct cloud-based alternatives to AMS. Both offer per-minute pricing with resolution and codec multipliers. They integrate with their respective cloud storage services (S3 for AWS, Cloud Storage for Google) in the same way AMS integrated with Azure Blob.

Switching clouds introduces multicloud complexity. If your infrastructure is on Azure, moving transcoding to another cloud means managing data transfer across providers.

End-to-end streaming platform

Platforms like Bitmovin Streams, Mux, and Cloudflare Stream go beyond encoding. They handle the full pipeline: ingest, transcoding, packaging, CDN delivery, and playback. These are suitable if your use case includes streaming delivery alongside encoding.

How do hosted transcoding APIs compare?

OptionPricing ModelJob Runtime LimitGPU SupportSDKsMigration Tool
BitmovinPer-minute encodingNo hard capYesYesYes (AMS-specific)
Very Good FFmpegPer-GB processed6 hoursNvidia, on demandTypeScript, Python, MCPNo (raw FFmpeg, no lock-in)
AWS Elemental MediaConvertNormalized per-minuteNo hard capYesYesNo
Google Transcoder APIPer-minuteNo hard capNoYesNo
Self-hosted FFmpegInfrastructure cost onlyUnlimitedDepends on hardwareNoneNo

Very Good FFmpeg is the only option that charges per-GB processed instead of per-minute with resolution and codec multipliers. CPU jobs run on dedicated 16 vCPU machines with 32 GB DDR5 RAM and NVMe storage. GPU jobs run on Nvidia RTX 4090, RTX 5090, A4000, A5000, and RTX 4000 series hardware.

Can I just use raw FFmpeg instead of a hosted API?

Yes. FFmpeg is actively maintained and handles all major codecs and formats. The FFmpeg 8.1 release added Vulkan compute-based codecs, Rockchip H.264 and HEVC hardware encoding, D3D12 encoding, and xHE-AAC decoding. About 100 authors contribute to each release.

The same FFmpeg binary runs on your own servers or inside a hosted API. The question is whether you want to manage the infrastructure.

Self-hosting FFmpeg means provisioning servers, handling concurrency, storing and serving outputs, monitoring job health, and managing scaling when volume spikes. Transcoding a single feature film can consume hours of CPU time. If your pipeline processes hundreds of videos per day, the operational overhead adds up quickly.

A hosted FFmpeg API gives you the same engine without the operations. You send the exact FFmpeg commands you would run locally, and the API executes them on dedicated hardware.

What about Bitmovin? Microsoft recommends them.

Microsoft officially recommends Bitmovin as the primary migration partner for AMS customers. Bitmovin offers a dedicated AMS migration guide and a 4-step migration process: create an Azure account, subscribe to Bitmovin Streams, migrate your existing library, and start streaming.

Bitmovin's key advantage is that you can reuse your existing Azure Storage without re-encoding your back catalog. Their migration tool reads directly from your Azure Blob containers.

Bitmovin supports multi-DRM (PlayReady, Widevine, FairPlay) and offers both Streams (end-to-end platform) and custom VOD and Live Encoder products. It also integrates with Azure CDN and Azure Front Door.

The trade-off is pricing. Bitmovin charges per-minute with resolution multipliers (SD at 1x, HD at 2x, 4K at 4x, 8K at 120x) and codec multipliers (HEVC at 2x). For simple transcoding without streaming delivery, per-minute pricing can be more expensive than per-GB models.

What about DRM? I need PlayReady and Widevine.

Azure Media Services had multi-DRM content protection built in, supporting PlayReady (Microsoft), Widevine (Google), and FairPlay (Apple), plus AES-128 clear key encryption. The dynamic encryption was tied to the Streaming Endpoint, which is now retired.

Not all AMS replacement options include DRM.

Bitmovin supports full multi-DRM as part of its Streams platform. If your workflow requires DRM-protected streaming, Bitmovin is the primary option that covers the same scope as AMS.

Very Good FFmpeg handles transcoding only. It does not include DRM or content protection. If you need DRM, you can pair a transcoding API with a separate content protection layer at the CDN level. Many teams separate encoding from content protection, using a CDN like Cloudflare or Azure Front Door with its own DRM support.

For teams that only need video encoding without DRM, a transcoding-only approach avoids paying for features you do not use.

How do I pick the right AMS replacement?

Answer these questions before choosing a provider.

Do you need just encoding or a full pipeline? If your workflow is encode video and store the output, a hosted transcoding API is enough. If you also need packaging, streaming delivery, and DRM, you need an end-to-end platform or a combination of services.

What is your monthly volume? Per-GB pricing works well for low to medium volume because you only pay for what you process. Per-minute pricing with resolution multipliers can become expensive for high-resolution outputs. Estimate your monthly usage with a bill calculator before committing.

Do you want to manage servers? If the answer is no, use a hosted API. Self-hosted FFmpeg gives you control but requires ongoing operations work.

Do you need DRM? This limits your options. If DRM is required, Bitmovin or a CDN-level DRM solution with a separate encoding provider will be necessary.

Is vendor lock-in a concern? Raw FFmpeg APIs use standard FFmpeg commands. If you ever want to switch providers, your command syntax stays the same. Proprietary presets and pipeline abstractions create dependency on a single vendor.

How do I migrate from AMS step by step?

The migration process depends on which replacement you choose, but the overall steps are the same.

  1. Audit your current AMS usage. Document which encoding presets you use, which storage containers hold your assets, and what your monthly encoding volume looks like.

  2. Confirm your Azure Blob Storage containers are still accessible. Log into the Azure Portal and verify you can list and download files from the containers that AMS used.

  3. Choose your replacement provider. Sign up and get an API key. Most providers offer free trial credits or a free tier for testing.

  4. Rewrite your encoding pipeline. Replace AMS SDK calls with the new provider's API calls. For Very Good FFmpeg, this means sending HTTP requests with your FFmpeg commands instead of creating AMS Transforms and Jobs.

  5. Test with a single video. Run a test encoding job and compare the output quality and file size with what AMS produced. Verify the output works in your playback pipeline.

  6. If using Bitmovin, use their AMS migration tool to transfer your existing back catalog without re-encoding. If using a different provider, download files from Azure Blob, send them through the new encoding pipeline, and store outputs back in Azure Blob or your preferred storage.

  7. Run a parallel trial. Route a portion of new video uploads through the new pipeline while keeping AMS jobs running. Compare reliability, speed, and output quality.

  8. Cut over. Update your application to route all encoding requests to the new provider. Remove AMS references from your codebase and configuration.

  9. Decommission AMS-related infrastructure. Remove any leftover AMS resources from your Azure account.

Will I pay more for a replacement?

Azure Media Services charged per-minute for finished encoding jobs only. The exact cost depended on the encoding preset and resolution.

Modern alternatives use different pricing models.

Bitmovin charges per-minute with resolution and codec multipliers. SD (up to 720p) is 1x, HD (up to 1080p) is 2x, 4K is 4x, and 8K is 120x. HEVC encoding adds a 2x multiplier. This can make high-resolution HEVC jobs expensive.

AWS Elemental MediaConvert uses normalized minutes with similar resolution multipliers. The basic tier starts at about $0.0075 per minute for SD output.

Google Transcoder API charges per-minute for video encoding with tiered pricing.

Very Good FFmpeg charges per-GB processed with no resolution or codec multipliers. Entry pricing starts at cents per GB, with volume discounts that apply automatically as your usage grows. A 4K HEVC encode and a 480p H.264 encode of the same file cost the same per GB. There is no monthly minimum for pay-as-you-go usage.

Self-hosted FFmpeg costs whatever your infrastructure costs. A dedicated VM with GPU runs $200 to $1,000 per month depending on specs, plus storage and egress. The hidden cost is engineering time spent managing and scaling the deployment.

For low to medium volume, per-GB pricing tends to be cheaper than per-minute with multipliers. For very high volume, volume discounts on per-GB pricing or reserved instances on cloud services become more cost effective.

Verdict: what should you do about AMS replacement?

Two years after the retirement, developers are still searching for answers. The search volume proves the migration was not smooth for everyone. If you are still on AMS or just now dealing with the migration, here is the practical advice.

For simple video transcoding with no DRM requirements, a hosted FFmpeg API is the cleanest replacement. Very Good FFmpeg runs your exact FFmpeg commands on dedicated hardware with per-GB pricing. No resolution multipliers, no codec multipliers, no proprietary presets. Your FFmpeg commands are portable if you ever want to switch providers.

For full pipeline needs including packaging, streaming, and DRM, Bitmovin is the most complete replacement. It is the official Microsoft-recommended partner and offers a dedicated AMS migration tool.

For teams that want zero vendor lock-in and have the operational capacity, self-hosted FFmpeg gives full control. The trade-off is that you own the infrastructure, scaling, and monitoring.

For Azure-heavy shops that prefer a non-Microsoft cloud, AWS Elemental MediaConvert or Google Transcoder API are the direct cloud equivalents to AMS. Just be aware of data transfer costs between Azure storage and another cloud's encoding service.

Do not overthink this. AMS was an encoding service. Your video files are intact. Pick an encoder that matches your volume and complexity, rewrite your pipeline, and move on.

FAQ

Can I still access my old AMS videos?

Yes. AMS stored assets in standard Azure Blob Storage containers. The containers are still accessible through Azure Storage APIs, SDKs, and the Portal. Only the encoding and streaming layer shut down.

Do I need to re-encode my entire back catalog?

Not necessarily. If your new provider can read from your existing Azure Blob containers, you may avoid re-encoding. Bitmovin offers this capability directly. For other providers, you can download the original source files and re-encode only as needed.

Is self-hosted FFmpeg cheaper than a hosted API?

It depends on volume and engineering time. At low volume, self-hosting is not cheaper once you factor in server costs, storage, and the time spent managing infrastructure. At very high volume with predictable usage patterns, reserved instances can be cost effective. Most teams underestimate the operational cost of self-hosting.

Does Very Good FFmpeg support H.265 and AV1?

Yes. Very Good FFmpeg uses a full FFmpeg build with standard codec support including H.264, H.265, AV1, VP9, ProRes, AAC, and Opus. If the FFmpeg codec list includes it, the API supports it.

Can I keep using Azure Blob Storage with a new provider?

Yes. Most hosted encoding APIs accept input files from any URL, including Azure Blob Storage URLs. You can point your provider's encoding jobs at files in your existing Azure storage without moving data.

What happened to AMS live streaming features?

Live streaming was part of the AMS retirement. All live channels and encoding endpoints were shut down. For live streaming replacement, Bitmovin offers live encoding. Self-hosted FFmpeg can handle live streaming with RTMP or SRT inputs. Some teams moved to dedicated live streaming platforms like Mux or Wowza.

Is Microsoft bringing AMS back?

No. The documentation is archived on the Microsoft Learn previous-versions section with NOINDEX and NOFOLLOW headers. Microsoft has stated the retirement is permanent. New video processing features on Azure come through the partner ecosystem.

How long does migration typically take?

A simple pipeline replacement with a hosted API takes one to two weeks for development, testing, and cutover. A complex pipeline with DRM, custom packaging, and content protection can take one to three months. Most of the time is spent validating output quality and testing edge cases.

Do I need to rewrite my code from scratch?

Not entirely. You will rewrite the encoding submission portion of your code. If you had abstraction around your AMS encoding calls, the migration is mostly changing the API client and response handling. Your storage logic, playback URLs, and application code around the encoder likely stays the same.

What about Dynamic Packaging and streaming URLs?

AMS provided dynamic packaging to convert a single set of encoded files into HLS, DASH, and Smooth Streaming formats. This is retired. Replacement options include using a CDN with packaging capabilities, a platform like Bitmovin Streams, or generating the packaging manifests yourself with tools like Shaka Packager or FFmpeg's HLS output.

References

  • Azure Media Services retirement announcement (Microsoft Learn, archived)
  • AMS encoding documentation with retirement banner
  • Stack Overflow: AMS account creation blocked with deprecation error
  • Stack Overflow: azure-media-services tag with 800+ questions
  • Bitmovin AMS Migration Guide (official Microsoft-recommended partner)
  • FFmpeg 8.1 release
  • Stack Overflow: AWS Elastic Transcoder to AMS migration (now moot)

Related reading

  • Jun 10, 2026

    Hosted FFmpeg REST API: 2026 Pricing and Comparison Guide

    Compare the top hosted FFmpeg REST APIs for video transcoding in 2026. Transparent pricing, hidden costs, and use-case recommendations across Mux, Bitmovin, AWS, Coconut, Rendi, FetchMedia, and Very Good FFmpeg.

  • Jun 10, 2026

    api.video Pricing, Video API Transcoding Docs 2026

    Compare api.video pricing for video API transcoding, docs, and how a full-stack video platform differs from a hosted FFmpeg API like Very Good FFmpeg.

  • Jun 10, 2026

    AWS Elemental MediaConvert Alternatives Cloud Video Transcoding 2026

    AWS Elemental MediaConvert alternatives for cloud video transcoding in 2026. Compare pricing, patent risk, and simpler hosted FFmpeg options like Very Good FFmpeg.

  • Jun 9, 2026

    AWS Elemental MediaConvert Pricing API Documentation

    Understand MediaConvert per-minute pricing, normalized-minute multipliers, API surface, and when a hosted FFmpeg API costs less

Very Good FFmpegChecking status...
Product
  • How it works
  • Pricing
  • Comparison
  • FAQ
  • Blog
Developers
  • Documentation
  • API Reference
  • MCP Server
  • TypeScript SDK
  • Python SDK
Company
  • Contact
  • Sign in
  • Sign up
  • Terms
  • Privacy
As Seen On
  • G2
  • Product Hunt
  • GitHub
  • PyPI
  • NPM
  • Smithery
  • MCP.so
  • AlternativeTo
  • Make
© 2026 Very Good FFmpeg