For most of Safari's history, the only way to play HLS on iOS was AVPlayer (or a element pointed at an HLS URL, which is AVPlayer underneath). MSE was deliberately not exposed because the standard MSE API doesn't give the OS visibility into memory pressure, which matters more on mobile than on desktop. JavaScript players that worked on Chrome and Firefox failed on iOS Safari for years.

ManagedMediaSource, shipped in iOS 17.1 in November 2023, is Apple's answer. It is API-compatible with MSE but with additional hooks: the OS can request the player to evict source-buffer data when memory is tight, and the player can advertise its memory budget. Apps using ManagedMediaSource get the same MSE programming model as on Chrome but with cooperative memory management.

The practical impact is that hls.js (since 1.5, 2024), Shaka Player (since 4.10) and dash.js can now run on iOS Safari, opening up cross-platform JavaScript player code paths that previously required platform-specific branches. AVPlayer remains the native option for iOS apps and the default for the shortcut, but for web apps that already run hls.js on Chrome, the same code now works on iOS — a major engineering win.