TALCS  0.0.1.1
TALCS: Audio Library of CrSjimo
Loading...
Searching...
No Matches
TALCS

TALCS Logo

TALCS: Audio Library of CrSjimo

GitHub homepage

Run Unit Tests Deploy documentations to GitHub Pages Coverity

Modules

  • Core

    The core module includes basic buffers, sources, and utilities for audio processing. The core module is required by all other modules.

  • Essential Modules
    • Device

      The device module includes functionalities for outputting audio to the device.

    • Format

      The format module includes functionalities for accessing formatted audio files.

    • MIDI

      The MIDI module can process MIDI messages, read inputs from MIDI devices, and do MIDI-related audio processing.

  • Additional Modules
    • Remote (requires: Device, MIDI)

      The remote module provides interfaces to communicate with the remote audio bridge. See talcs-remote.

    • JUCE Adapter

      The JUCE adapter module provides adapters for some classes in JUCE.

    • DSPX (requires: Format)

      The DSPX module includes classes for building up the audio-processing context in DSPX editor applications.

Essential modules will be built by default, and additional modules will not be built by default. To enable or disable the build of a module, set the corresponding CMake option on or off.

The device module provides two internal implementations: SDL and ASIO. SDL is enabled and ASIO is disabled by default. To enable or disable, set the CMake option TALCS_DEVICE_ENABLE_SDL and TALCS_DEVICE_ENABLE_ASIO on or off.

API Documentation

Documentation homepage

Dependencies

TALCS uses vcpkg to manage dependency libraries, except Qt, ASIO SDK, r8brain, and JUCE:

  • The port files of interval-tree and qmsetup are in stdware/vcpkg-overlay. The documentation about how to install libraries is also in this repository. This repository is included as a submodule in scripts/vcpkg.
  • ASIO SDK should be downloaded manually from Steinberg's official website and configured in CMake option TALCS_ASIOSDK_DIR.
  • r8brain is included as a submodule in the TALCS repository.
  • JUCE should be manually specified in the CMake option JUCE_DIR to make CMake find it.

License of TALCS

TALCS is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

TALCS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with TALCS. If not, see https://www.gnu.org/licenses/.

License of the TALCS Documentation

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".