Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. C/C++
  3. Flicks

Flicks

NOASSERTIONC++

A C++ time unit for exact representation of common media framerates and audio sample rates using std::chrono.

GitHubGitHub
1.4k stars75 forks0 contributors

What is Flicks?

Flicks is a C++ time unit library that defines a 'frame-tick' as 1/705600000 of a second. It provides exact integer representations for common media framerates and audio sample rates, solving floating-point accumulation errors in time-sensitive simulations and media processing.

Target Audience

C++ developers working in visual effects, film, television, game development, or audio processing who need precise time management for simulations and media integration.

Value Proposition

Developers choose Flicks because it offers guaranteed temporal accuracy through integer math, seamless integration with std::chrono, and exact support for industry-standard frame and sample rates without approximation errors.

Overview

A unit of time defined in C++.

Use Cases

Best For

  • Accumulating simulated time in visual effects pipelines without floating-point drift
  • Synchronizing audio and video processing at exact sample and frame rates
  • Implementing frame-accurate media playback in C++ applications
  • Developing game engines that require precise timing for physics simulations
  • Creating tools for film and television post-production workflows
  • Building media converters that maintain exact temporal relationships

Not Ideal For

  • Applications requiring precise handling of NTSC's true variable frame rate beyond the 1000/1001 approximation
  • Projects in programming languages other than C++ that cannot easily integrate std::chrono-based libraries
  • Simple simulations or media players where floating-point time accumulation errors are negligible and added complexity isn't justified

Pros & Cons

Pros

Exact Integer Timing

Represents common frame rates like 24Hz and audio sample rates like 44.1kHz as integer flicks, eliminating floating-point drift in time accumulation, as detailed in the motivation and examples.

Seamless std::chrono Integration

Implemented as a std::chrono::duration type, allowing direct use with C++'s timing utilities and high-resolution clocks, mentioned in the basics and installation sections.

Header-Only Simplicity

Single-header library that can be included directly or defined in one line of code, minimizing integration overhead, as highlighted in the installation notes.

Broad Media Format Support

Covers a wide range of film, TV, and audio rates including approximations for NTSC, with specific integer values listed for each supported rate in the details section.

Cons

Approximate NTSC Handling

Uses 1000/1001 ratios for NTSC rates, which the README admits doesn't cover all nuances of variable frame rate playback, limiting precision for broadcast-standard applications.

Fixed Rate Limitations

Only supports a pre-defined set of frame and sample rates; arbitrary or emerging standards may not be exactly representable without modifying the base unit, as noted in the non-exhaustive list.

C++-Locked Implementation

Tightly coupled to C++'s std::chrono, making it unsuitable for non-C++ projects without significant adaptation, restricting its use to C++ ecosystems.

Frequently Asked Questions

Quick Stats

Stars1,389
Forks75
Contributors0
Open Issues1
Last commit8 years ago
CreatedSince 2017

Tags

#simulation#media-processing#video-processing#c-plus-plus#header-only-library#audio-processing#time-measurement

Built With

C
C++

Included in

C/C++70.6k
Auto-fetched 9 hours ago

Related Projects

stbstb

stb single-file public domain libraries for C/C++

Stars34,612
Forks8,088
Last commit1 month ago
{fmt}{fmt}

A modern formatting library

Stars25,655
Forks3,045
Last commit13 hours ago
xxHashxxHash

Extremely fast non-cryptographic hash algorithm

Stars11,242
Forks914
Last commit1 month ago
single_file_libssingle_file_libs

List of single-file C/C++ libraries, with emphasis on clause-less licenses.

Stars9,997
Forks650
Last commit20 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub