| Simple DirectMedia Layer | |
|---|---|
| Luoja | Sam Lantinga |
| Kehityshistoria | |
| Vakaa versio | 3.4.20 () |
| Tiedot | |
| Ohjelmistotyyppi | ohjelmakirjasto |
| Ohjelmointikielet | C |
| Lisenssi | zlib-lisenssi |
| Aiheesta muualla | |
| Verkkosivusto | |
| Versiohallinta | |

Simple DirectMedia Layer (SDL) on kirjasto, joka luo yhtenäisen ohjelmointirajapinnan eri ympäristöihin helpottaakseen multimediapohjaisten ohjelmien ohjelmointia.
SDL on kehitetty videopelien ohjelmointiin. SDL on avointa lähdekoodia: versioon 1.2 saakka kirjasto on julkaistu LGPL-lisenssillä ja versiosta 2.0 alkaen vähemmän ehtoja asettavalla zlib-lisenssillä.
SDL on toteutettu C-kielellä. Kirjastoa voidaan käyttää ainakin Ada, C, C++, C#, D, Go, Lua, OCaml, Pascal, Python ja Rust -ohjelmointikielien kanssa.
Kirjastoon on lisätty tuki Wayland ja Mir -ikkunointijärjestelmille aiemman X Window System tuen rinnalle.
Kirjaston loi Sam Lantinga, joka julkaisi ensimmäisen version vuoden 1998 alussa. Hän sai idean siirtäessään Windows-ohjelmistoja Macintoshille. Tämän jälkeen hän siirsi SDL:n avulla Doomin BeOSille.
Lantinga ilmoitti siirtymisestä töihin Loki Softwarelle joulukuussa 1998. Loki Software oli ensimmäinen useita kaupallisia pelejä Linuxille siirtäneistä yhtiöistä ja monet sen julkaisut käyttivät SDL:ää.
SDL versio 2.0.0 julkaistiin elokuussa 2013. Mukana tuli täysi tuki laitteistokiihdytykselle 3D-grafiikalle. Valve Corporation käytti tuolloin SDL:ää peliohjainten tukemiseen. Merkittävä ero 2.0:n ja aiemman 1.2:n välillä on lisenssin muutos LGPL-lisenssistä zlib-lisenssiin, joka sallii vapaamman käytön kaupallisissa projekteissa.
SDL 2.26 julkaistiin marraskuussa 2022.
Loppuvuodesta 2022 SDL3-version kehitys alkoi. Aikeena on tehdä kaikki ABI:n rikkovat ratkaisut (vanhojen käyttämättömien toimintojen poistot) varhain. Ensimmäinen vakaa versio (3.2.0) julkaistiin tammikuussa 2025. SDL3:ssa on lisätty tuki Vulkan-rajapinnalle. Kirjaston otsikkotiedot ja virhetilanteiden tarkistukset ovat muuttuneet, joita varten mukana on Python- ja Coccinelle-skriptit oman SDL-kirjastoa käyttävän ohjelmakoodin päivittämiseen uudelle versiolle.
Kuvia Simple DirectMedia Layer -kirjastoa käyttävistä ohjelmistoista.