This post summarizes libraries to create multimedia content, including window creation, input management, both 2D or 3D graphics and sound.
It may leverage 3D graphics libraries like OpenGL or Vulkan. You can read this post about 3D graphics libraries.
Graphics and multimedia libraries should not be confused with game frameworks or game engines.
Advantages of using Multimedia libraries
Using multimedia libraries allow to create applications that work on different hardware and operating systems (cross-platform).
List of Multimedia Libraries
List of multimedia libraries:
- SDL
- SFML
- DirectX
SDL
Simple DirectMedia Layer (SDL) is a FOSS cross-platform software development library that provides an abstraction layer for multimedia hardware components.
Unlike OpenGL and Vulkan that are dedicated to graphics, SDL is dedicated to multimedia in general such as window management, etc. SDL would be simpler but less specialized than OpenGL and Vulkan. Sometimes they are used together.
You can read this post about SDL.
SFML
Simple and Fast Multimedia Library (SFML) is a software development library that provides an API to multimedia components.
It offers a more modern and user-friendly interface compared to SDL, with a primary focus on graphics and multimedia.
It is Free and Open-source Software (FOSS), under a zlib/png license.
DirectX
Direct3D is a multimedia library for Microsoft products. It is developed by American company Microsoft.
One of its most popular components is Direct3D.
It is aimed for Windows and XBox platforms.
DirectX SDK is included in Windows SDK since Windows 8. You can read more about it on this external link.