LibMediaProvider-1.0 is a core utility library for the MMORPG The Elder Scrolls Online
(ESO), designed to streamline how custom visual and audio media are shared across different player-made add-ons. Origin and Purpose The library was inspired by LibSharedMedia-3.0 World of Warcraft
. Its primary function is to act as a central hub where add-ons can "register" their own media files—such as fonts, status bar textures, backgrounds, and borders. Once registered, any other add-on can pull from this shared pool, ensuring that players don't have to duplicate large media files across multiple add-on folders, which saves disk space and simplifies UI customization. The Story of Its Evolution Early Days and LibStub : In its original version, the library relied on
, a standard version-management tool used by many ESO and WoW developers. As the ESO modding community matured, developers moved away from LibStub to reduce overhead. Version 1.0 r20 Milestone
: A significant "plot twist" in the library's development occurred with the release of version
, which completely removed the dependency on LibStub. This change required add-on authors to update their code to use a global variable instead of the old LibStub call. The Transition to 1.1
: The library recently underwent a major name change. While it was long known as LibMediaProvider-1.0
officially dropped the "-1.0" suffix from its name. This shift was driven by a need for better compatibility with console add-ons
and the new UI font rendering system introduced in ESO Update 41. Maintenance Handover
: The project's maintenance was originally handled by a developer named ArtOfShred but has since been taken over by
, who continues to provide live updates for modern ESO patches. Technical Capabilities & Limitations Media Types
: It handles fonts, backgrounds, borders, and status bar textures. While it lists sounds, ESO does not currently support custom player-added sounds, so the library only allows add-ons to trigger sounds already present in the default game files. Font Rendering libmediaprovider-1.0
: Versions 1.0 r29 and later migrated to the game's modern font rendering system to ensure text remains crisp even on high-resolution displays.
: Version 1.0 r23 introduced "media table security" to prevent rogue add-ons from accidentally rewriting and breaking the shared media list for everyone else.
Today, it remains an essential "behind-the-scenes" tool. If you use popular UI mods like FCM Quest Tracker
, you likely have LibMediaProvider installed to keep your interface looking cohesive. this library or are you an add-on author trying to register new media?
LibMediaProvider for Elder Scrolls Online. This ... - GitHub
Understanding LibMediaProvider-1.0: The Backbone of ESO Addon Customization
In the world of The Elder Scrolls Online (ESO), visual and functional customization is largely driven by a robust community of addon developers. At the heart of many of these interface overhauls is a vital utility library known as LibMediaProvider-1.0 (often abbreviated as LMP).
Originally inspired by World of Warcraft’s LibSharedMedia-3.0, LibMediaProvider acts as a central warehouse for media assets—such as fonts, textures, and sounds—allowing different addons to share and access them seamlessly. What is LibMediaProvider-1.0?
LibMediaProvider is a shared library that facilitates the "registration" and "fetching" of media files. Without it, every individual addon would need to include its own copies of fonts or status bar textures, leading to redundant files and higher memory usage.
Registration: An addon can register a new piece of media (like a unique font file) with the library.
Provisioning: Once registered, any other addon—such as Azurah or Combat Metrics—can request that media from the library and use it in its own user interface. Key Supported Media Types LibMediaProvider-1
Currently, the library supports several categories of media that developers can utilize to improve the in-game UI: Fonts: Custom text styles for chat, nameplates, and menus. Statusbars: Textures for health, magicka, and stamina bars.
Borders & Backgrounds: Visual frames for windows and UI panels.
Sounds: Shared audio cues from the default UI (Note: ESO does not currently support custom external sound files for addons). Transitioning from LibStub
Older versions of this library relied on a legacy tool called LibStub to load correctly. However, modern versions of LibMediaProvider (from version 1.0 r20 onwards) have deprecated LibStub in favor of a direct global variable.
If you are an addon developer or a user seeing "LibStub required" errors, it usually means you are running an outdated addon that hasn't been updated to the current LibMediaProvider standards. How to Install and Update
For most players, the easiest way to manage this library is through the Minion Addon Manager.
Search: Open Minion and use the "Find More" tab to search for "LibMediaProvider".
Install: Click install to place the library in your Documents/Elder Scrolls Online/live/AddOns folder.
Update: Regularly check the "Installed" tab; updates will appear in green when a new version is available. For Developers: Basic API Functions
If you are looking to integrate LibMediaProvider into your own project, the library provides several straightforward Lua functions available on GitHub:
LMP:Register(mediatype, key, data): Adds a new asset to the library. Key features
LMP:Fetch(mediatype, key): Retrieves the file path for a specific asset.
LMP:List(mediatype): Returns a sorted list of all available handles for a specific type (useful for creating dropdown menus).
As of recent updates (version 1.1 r34 and later), the addon name has officially shifted to LibMediaProvider, and developers are encouraged to update their ## DependsOn manifest tags to reflect this change for better console compatibility. LibMediaProvider : Libraries : Elder Scrolls Online AddOns
Mar 13, 2557 BE — LibMediaProvider : Libraries : Elder Scrolls Online AddOns. ... LibMediaProvider is inspired by and borrows from LibSharedMedia-3. Elder Scrolls Online AddOns LibMediaProvider : Libraries : Elder Scrolls Online AddOns
Mar 13, 2557 BE — LibMediaProvider : Libraries : Elder Scrolls Online AddOns. ... LibMediaProvider is inspired by and borrows from LibSharedMedia-3. Elder Scrolls Online AddOns
If you suspect libmediaprovider-1.0 is causing issues in your app, follow this checklist:
adb shell content query --uri content://media/external/images/media and look for rows with _size = 0.adb logcat -b crash and look for backtraces containing #00 pc ... libmediaprovider-1.0.so.query() that is not closed will leak native memory inside libmediaprovider-1.0, eventually causing a OutOfMemoryError despite the Java heap looking fine.ContentResolver.openFileDescriptor(): Instead of direct file paths. This forces all I/O through the native library’s permission checks, ensuring consistency.libmediaprovider-1.0 is far more than a random system library. It is the workhorse behind every gallery app, every file picker, and every media-sharing feature on Android. From its native thumbnail cache to its FUSE daemon for external storage, this library balances performance, security, and compatibility across a fragmented hardware landscape.
For developers, respecting its constraints (scoped storage, batch operations, proper URI usage) leads to smoother apps. For system engineers, monitoring its log output can unlock solutions to stubborn media corruption issues. And for security professionals, it remains a fascinating, hardened attack surface.
Next time you scroll through your camera roll, spare a thought for libmediaprovider-1.0 – silently parsing, caching, and serving each frame at native speed.
Have you encountered a specific issue with libmediaprovider-1.0? Share your debugging story in the comments below.