Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/andrewrk/libebur128
libebur128 with the build system replaced by zig
https://github.com/andrewrk/libebur128
zig-package
Last synced: 29 days ago
JSON representation
libebur128 with the build system replaced by zig
- Host: GitHub
- URL: https://github.com/andrewrk/libebur128
- Owner: andrewrk
- License: mit
- Fork: true (jiixyj/libebur128)
- Created: 2014-02-17T03:03:18.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2023-12-05T23:37:24.000Z (about 1 year ago)
- Last Synced: 2024-08-03T23:23:20.718Z (4 months ago)
- Topics: zig-package
- Language: C
- Homepage:
- Size: 1.05 MB
- Stars: 0
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: COPYING
Awesome Lists containing this project
- awesome-zig - libebur128
README
This is a fork of [libebur128](https://github.com/jiixyj/libebur128), packaged
for Zig. Unnecessary files have been deleted, and the build system has been
replaced with `build.zig`.Original README follows:
============================================================================
libebur128
==========libebur128 is a library that implements the EBU R 128 standard for loudness
normalisation.All source code is licensed under the MIT license. See COPYING file for
details.See also [loudness-scanner tool](https://github.com/jiixyj/loudness-scanner).
News
----v1.2.6 released:
* Fix dynamic linking on Windows.v1.2.5 released:
* Remove `BUILD_STATIC_LIBS` build option. Instead the CMake-supported
`BUILD_SHARED_LIBS` option is now honored as expected.
* Various code cleanups, warning fixes and documentation improvements
* Fix issue related to filter state indexing with high channel enums (#77)
* Introduce limits for number of channels and maximum supported samplerate to
avoid integer overflows
* Fix error return code of `ebur128_set_channel`. The actual behavior is now
aligned to the documentation (#90).v1.2.4 released:
* Fix broken `ebur128_loudness_global_multiple()` function. Since v1.1.0 it
calculated the relative threshold just from the last state given to it,
resulting in wrong values.
* More tests
* Fix some minor build issues
* Fix uninitialized memory in `ebur128_init()`, possibly resulting in wrong
valuesv1.2.3 released:
* Fix uninitialized memory access during true peak scanning (bug #72)v1.2.2 released (v1.2.1 was mistagged):
* Fix a null pointer dereference when doing true peak scanning of 192kHz datav1.2.0 released:
* New functions for real time loudness/peak monitoring:
* `ebur128_loudness_window()`
* `ebur128_set_max_window()`
* `ebur128_set_max_history()`
* `ebur128_prev_sample_peak()`
* `ebur128_prev_true_peak()`
* New FIR resampler for true peak calculation, removing Speex dependency
* Add true peak conformance tests
* Bug fixesv1.1.0 released:
* Add `ebur128_relative_threshold()`
* Add channel definitions from ITU R-REC-BS 1770-4 to channel enum
* Fix some minor build issuesv1.0.3 released:
* Fix build with recent speexdsp
* Correct license file name
* CMake option to disable static library
* minimal-example.c: do not hard code program name in usageFeatures
--------* Portable ANSI C code
* Implements M, S and I modes
* Implements loudness range measurement (EBU - TECH 3342)
* True peak scanning
* Supports all samplerates by recalculation of the filter coefficientsInstallation
------------In the root folder, type:
mkdir build
cd build
cmake ..
makeIf you want the git version, run simply:
git clone git://github.com/jiixyj/libebur128.git
Usage
-----Library usage should be pretty straightforward. All exported symbols are
documented in the ebur128.h header file. For a usage example, see
minimal-example.c in the tests folder.On some operating systems, static libraries should be compiled as position
independent code. You can enable that by turning on `WITH_STATIC_PIC`.