Introduction
Kodi started as Xbox Media Center (XBMC) in 2002 and evolved into a cross-platform media center that organizes movies, TV shows, music, and photos into a browsable library. Its add-on ecosystem and skinning system make it one of the most customizable media applications available.
What Kodi Does
- Scans and organizes media files into a searchable library with metadata, artwork, and ratings from online scrapers
- Plays virtually any audio and video format using its integrated FFmpeg-based player
- Supports network sources including SMB, NFS, UPnP/DLNA, and HTTP streams
- Extends functionality through thousands of add-ons for live TV, PVR, subtitles, and web content
- Runs a JSON-RPC API and built-in web server for remote control and automation
Architecture Overview
Kodi is written in C++ with a Python-based add-on framework. The core handles media playback, library management, and rendering of the skinnable UI via OpenGL/DirectX. Add-ons run in a sandboxed Python environment with access to Kodi's API for UI elements, settings, and playback control. The database backend uses SQLite locally or MySQL/MariaDB for shared multi-room libraries.
Self-Hosting & Configuration
- Install on a dedicated device (Raspberry Pi, mini PC, or NAS) for a living-room media center
- Point Kodi to local or network media folders and let the library scanner fetch metadata automatically
- Set up a shared MySQL/MariaDB database for synced watch status across multiple Kodi instances
- Install PVR add-ons (e.g., TVHeadend, NextPVR) for live TV and DVR functionality
- Enable the web interface (Settings > Services > Control) for remote management via browser or mobile apps
Key Features
- 10-foot interface optimized for TV screens with full remote control and gamepad support
- Skin engine allows complete UI redesigns (Estuary default, Aeon Nox, Arctic Horizon, etc.)
- Add-on repository with thousands of plugins for streaming, subtitles, lyrics, and more
- Multi-room support via shared database lets every Kodi instance see the same library and watch state
- Cross-platform support including embedded Linux distributions like LibreELEC and OSMC
Comparison with Similar Tools
- Plex — cloud-dependent with transcoding server, whereas Kodi plays locally and requires no account
- Jellyfin — server-client model focused on streaming to browsers and apps; Kodi is a local player first
- Emby — similar to Plex with a freemium model; Kodi is fully free and open source
- VLC — excellent as a standalone player but lacks Kodi's library management and living-room UI
FAQ
Q: Is Kodi legal? A: Yes, Kodi itself is fully legal open-source software. It does not include or endorse any content; legality depends on what media and add-ons you use.
Q: Can I run Kodi on a Raspberry Pi? A: Yes. Distributions like LibreELEC and OSMC are purpose-built to run Kodi on Raspberry Pi with minimal overhead.
Q: Does Kodi support 4K and HDR? A: Yes, Kodi supports 4K playback and HDR passthrough on compatible hardware and operating systems.
Q: How do I control Kodi from my phone? A: Enable the web server in Kodi settings, then use official remote apps (Kore for Android, or any JSON-RPC compatible app).