SIMD-accelerated libjpeg-compatible JPEG codec library
libjpeg-turbo is a JPEG image codec that uses SIMD instructions (MMX, SSE2, NEON, AltiVec) to accelerate baseline JPEG compression and decompression on x86, x86-64, ARM, and PowerPC systems. On such systems, libjpeg-turbo is generally 2-6x as fast as libjpeg, all else being equal. On other types of systems, libjpeg-turbo can still outperform libjpeg by a significant amount, by virtue of its highly-optimized Huffman coding routines. In many cases, the performance of libjpeg-turbo rivals that of proprietary high-speed JPEG codecs. libjpeg-turbo implements both the traditional libjpeg API as well as the less powerful but more straightforward TurboJPEG API. libjpeg-turbo also features colorspace extensions that allow it to compress from/decompress to 32-bit and big-endian pixel buffers (RGBX, XBGR, etc.), as well as a full-featured Java interface.
Dlib is a C++ toolkit containing machine learning algorithms and tools for creating complex software in C++ to solve real world problems.
A multimedia framework based on Qt and FFmpeg
QtAV is a cross-platform and high performance multimedia playback framework based on Qt and FFmpeg. Features: timeline preview, gpu decoding etc
A multi-format module player and library
xmp is a module player for Unix-like systems that plays over 90 mainstream and obscure module formats from Amiga, Atari, Acorn, Apple IIgs and PC, including Protracker (MOD), Scream Tracker 3 (S3M), Fast Tracker II (XM) and Impulse Tracker (IT) files.
Orx: Portable Game Engine
Orx is a portable, lightweight, plugin-based, data-driven and extremely easy to use 2D-oriented game engine. As orx is data driven, it allows users to create games with a small number of lines of code and reduces drastically the development time.
native popup inputbox password color WIN OSX GTK QT CONSOLE C# LUA SSH
v3.3.5 one C file + header (add them to your C or C++ project) with 8 functions: - beep - tray notify popup - message & question - input & password - save file - open file(s) - select folder - color picker complements OpenGL Vulkan GLFW GLUT GLUI VTK SFML TGUI SDL Ogre Unity3d ION OpenCV CEGUI MathGL GLM CPW GLOW Open3D IMGUI MyGUI GLT NGL STB & GUI less programs NO INIT NO MAIN LOOP NO LINKING NO INCLUDE the dialogs can be forced into console mode windows (XP to 10) ASCII MBCS UTF-8 UTF-16 - native code creates the graphic dialogs - enhanced console mode via dialog.exe - basic console input osx / unix (command line calls) ASCII UTF-8 - applescript, kdialog, zenity - python + tkinter + dbus - dialog (opens a console if needed) - basic console input C89 / C++98 compliant VisualStudio MinGW GCC Clang TinyCC OpenWatcom-v2 BorlandC SunCC ZapCC on Windows Mac Linux Bsd Solaris Minix Raspbian click the tab 'Files' for prototypes, help, hello_world
C++ Library collection
Containers to extend STL: graph, tree, matrix, smart-pointer. Persistence (serialisation) of C++ data structures. Portability: subprocesses, TCP, file system. Reusable subsystems: library manager, message handler. Portable between OSs and compilers.
An attempt to create a cross platform QT compatible serial port driver This code attempts to supports signal event driven design.
a CLI generator and and SW library
CLIck allows you to create flat or hierarchical CLI (command line interfaces) in an extremely easy and quick way, supporting very popular features like history with command recalling, context-based auto-completion, tab-based command list, automatic command-line help, special characters, automatic structure builder, and much more. CLIck is written in ANSI C and tested on C and C++ applications on several architectures. It doesn't depend on any external library and uses only a very small subset of POSIX APIs. Despite the project name, you won't need your mouse at all!
Extended C Library
Why Is libxc needed? There doesn't exist a library for ANSI C99 for common data containers, such as vectors, trees, etc. There also also doesn't exist a library for common functionality, such as error reporting/logging, string functions, configuration management (reading config files), etc... The programmer working in C doesn't have anything analogous to the Boost C++ library. The extended C library is intended to make some headway into providing this functionality. To ensure unrestricted usage the libxc project is provided under the very permissive BSD license. If you need a different license then please send me a request (lelanthran at gmail) and I'll do my best to satisfy your request. What's completed? As of writing, the following libraries have been written and tested: 1. Memory accounting/tracking 2. String operations 3. Vectors 4. Trees 5. Dictionary arrays 6. Configuration management See the wiki page for more information
Unified Test and Logging layer for multiple programming languages
Modern software systems and application are commonly written in multiple languages, include scripting engines, and are frequently build on multiple specialized frameworks and middleware for a considerable diversity of runtime environments. The latest influencing update in development paradigm is the application of multicore processors. This projects is aimed to unify the required trace and logging output and integrate into debugging environments. The target is to provide general development, test, and production support of software environments based on multiple programming languages for distributed multicore environments.
This is a collection of code snippets, utilities and scripts I have written over decades as a technologist. I'm releasing them here to the public in the hopes that someone will find them as useful as I have.
This STL-like C++ library contains classes for long integer numbers processing with using of assembler functions as a backend. Lazy evaluation is also used for optimization. It also contains generic implementation of classical number-theory algorithms.
The main task is an independent API for KDE and Qt
With help of the independent API for KDE and Qt, the user of this library must not take care, whether KDE or plain Qt is used behind the scene. For example he can just use the provided filedialog, which is mapped on the KDE dialog, if this library is used in KDE version. This package contains libengsas linked against KDE, so you should install this package instead of libengsas0, if you want to enable the internal KDE usage of libengsas Binary and source packages for many Linux distributions can be found at http://download.opensuse.org/repositories/home:/engsas The source code documentation can be found at http://trac.engsas.de/libengsas/doxygen.
Hotpug detection for windows and linux. Only QtCore is required
QDeviceWatcher can detect usb storage add and remove event. Tested on linux (>= 2.6) and windows(mingw and msvc). WinCE is to be tested.
The cpp_trace is a flexible and compact logging C++ library. The library provides a facility to filter and route between output streams text trace messages. It uses generic type-safe design and conforms to STL io stream concepts.
A tiny and easy to use log system for C/C++
A tiny and easy to use log library for C/C++. Written in C. Customizable log message format for global and specified output target Cross platform support. Tested: linux, win32, wince, mac
File type detector library
This project is a tool to detect file types by signatures and mime types. It uses hash tables to make the detection of a file type as fast as possible. The signature and mime types lists are stored at simple user-friendly files. This file type detector supports a lot of formats (image, archive, text, documents, audio, video, fonts and others). It also includes Microsoft OLE compound file types. The detector's algorythm has special features to detect text file types like (HTML, XML, JSON, etc.) and text file UNICODE charsets by using their BOMs (Byte order marks). Its small simple interface can be used at the most popular platforms.
Set of STL-compatible ICU-based locale facets.
Set of STL-compatible ICU-based facets for localization and internationalization of C++ programs.
libccco was an attempt to mimic the behaviour of Plan 9's libthread using POSIX threads, C11 threads, and win32 threads.
port for win msvc etc
port for win msvc etc. use qmake project