QtAV is an open source library software written in Qt and designed to be used for creating full featured media playback applications for Linux, Microsoft Windows and BSD operating systems.
Features at a glance
It features support for seek, resume, pause, video capture, music playback, volume control, fullscreen, stay on top, frame by frame playback (only forward), support for both local and network files, as well as support for the Libav and FFmpeg projects.
Support for hardware decoding is implemented for the CedarX, VAAPI and DXVA2 APIs. It can save video files in the YUV and RGB formats, and implements support for OSD (On-screen display), custom filters, aspect ratio, music playback, volume control, and playing speed control.
It can also be used to rotate or shear any video file using GraphicsItemRenderer, allows for playing a specific audio track by choosing audio channels and media streams, and support multiple rendering engines, including Direct2D, OpenGL, QPainter, XV, and GDI+.
Lets apps playback local or remote files
As mentioned, the library allows for playback of local files, as well as remote ones via well known protocols, such as HTTP and RTSP. In addition, it supports multiple video outputs for a single player, and can dynamically change a render engine when playing a video file.
QtAV also supports ROI (Region of Interest), such as video cropping, video equalizers for modifying contrast, brightness, hue and saturation, as well as QML (Qt Modeling Language) through a plugin.
Under the hood and supported operating systems
The project can be easily built against the Qt4 or Qt5 frameworks, allowing developers to create video playback application with either toolkit. It is one of the most appreciated library software for creating feature-rich multimedia playback apps.
As mentioned, the software is platform-independent, supporting a plethora of GNU/Linux and UNIX-like operating systems, including BSD and Microsoft Windows. It was written in the C++ programming language and supports multiple keyboard shortcuts.