• Stars
    star
    124
  • Rank 286,769 (Top 6 %)
  • Language
    C++
  • License
    GNU General Publi...
  • Created about 5 years ago
  • Updated 10 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Create and edit DDC headset correction files

Icon
DDCToolbox

Create and edit ViPER DDC files on Linux, Windows, macOS and Android

GitHub downloads count GitHub release (latest by date) License Windows build

Features β€’ Installation β€’ Contributors β€’ License

Screenshot

Features

  • Save/load VDC project files
  • Import/export VDCs
  • Direct AutoEQ integration
  • Undo/redo framework
  • Edit values directly in the table
  • Interactive magnitude response, phase response and group delay plot
  • Various IIR filters (peaking, low/high pass/shelf, notch, all/band pass and unity gain)
  • Embed custom IIR filters
  • Stability check for filters
  • Advanced peaking filter curve fitting (using libMultivariateOpt)

Installation

Developed with Linux in mind. You can also find Windows and macOS installation instructions below.

Recommended:

Supported CPU architectures:

  • Windows
    • x86_64 only; precompiled
  • Linux
    • PPA - x86_64 only; precompiled
    • AUR - x86_64, arm64, and armhf; built from source
    • Snap - x86_64, arm64, armhf, ppc64el, and s390x; precompiled
  • macOS
    • Intel x86_64 only

Other installation methods (not recommended):

Windows (Stable)

You can find stable windows packages attached on the release page.

Windows (Nightly)

These windows builds are automatically built and deployed once a new commit has been pushed. They may contain bugs but are always cutting-edge.

You can download one of these builds from my server.

If the server is down, you can also get one from the GitHub artifact storage:

  1. Visit the actions section
  2. Select the latest job at the top that finished successfully
  3. On the next page, scroll all the way down to the artifacts section
  4. Select your architecture and choose whether you want an installer or standalone executable.

NOTE: You need a GitHub account to download these build artifacts, otherwise you'll get redirected to a 404 page.

Debian/Ubuntu (PPA)

Recommended system requirements:

  • Distro based on Debian 11 or later OR
  • Distro based on Ubuntu 20.04 or later

Add PPA Repo

sudo apt install -y curl
curl -s --compressed "https://thepbone.github.io/PPA-Repository/KEY.gpg" | sudo apt-key add -
sudo curl -s --compressed -o /etc/apt/sources.list.d/thepbone_ppa.list "https://thepbone.github.io/PPA-Repository/thepbone_ppa.list"
sudo apt update

Install from PPA

sudo apt install ddctoolbox

View PPA on GitHub

Arch (AUR)

A git package is available in the AUR.

yay -S ddctoolbox-git

AUR version

Snap package (Universal Linux)

Linux users can download a stable release of this app from the Snap Store. If snap is not yet installed on your system, you need to install it before you can continue: https://snapcraft.io/docs/installing-snapd. (All Ubuntu flavors, KDE Neon, Manjaro and Zorin OS have this utility already pre-installed)

Supported CPU architectures: x86_64, arm64, armhf, ppc64el, and s390x.

Once snap is properly installed, you can install ddctoolbox:

sudo snap install ddctoolbox

You can launch ddctoolbox by executing ddctoolbox in a terminal, or by selecting the application shortcut in your drop-down menu bar.

Note: If you installed snap for the first time, it may be necessary to relogin in order to make the application shortcut in your menu bar visible.

Snapcraft Badge

Android

There is an Android version of DDCToolbox with limited functionality available here: ThePBone/DDCToolbox-Android

macOS (Intel)

macOS support is currently in beta; only cloud-compiled nightly binaries are available. The next stable release will include stable versions of OSX binaries. OSX 10.13 (High Sierra) or later Intel macOS devices only. If your device is older or an ARM-based device, try to compile it from sources yourself.

You can download one of nightly beta builds from my server.

Debian (Nightly)

Qt 5.11 or later required. Debian 10 (or later releases) provide this version of Qt in their official repositories.

Since these nightly (beta) packages are not downloaded by your package manager, you will not be notified about any updates. If possible, please install this app from the stable PPA instead!

You can download one of these nightly debian packages or precompiled binaries from my server. They are automatically compiled and may contain bugs. Dependencies are not included with precompiled standalone executables.

Manually/Portable (Linux)

Build from sources

Requirements:

  • Qt 5.11 or later

Install dependencies (Debian)

sudo apt install qt5-qmake qtbase5-dev libgl1-mesa-dev

Install dependencies (Arch)

sudo pacman -S qt5-base 

Clone this repository

git clone --recurse-submodules https://github.com/ThePBone/DDCToolbox

Compile sources

cd DDCToolbox
qmake
make

You should now be able to execute it:

./DDCToolbox

Optional: Installation and shortcut

Copy to /usr/local/bin

sudo cp DDCToolbox /usr/local/bin/ddc-toolbox
sudo chmod 755 /usr/local/bin/ddc-toolbox

Create Menu Entry

sudo cat <<EOT >> /usr/share/applications/ddc_toolbox.desktop
[Desktop Entry]
Name=DDC Toolbox
GenericName=DDC Editor
Comment=Create and edit DDCs on Linux
Keywords=editor
Categories=AudioVideo;Audio;Editor
Exec=ddc-toolbox
Icon=/usr/share/pixmaps/ddc-toolbox.png
StartupNotify=false
Terminal=false
Type=Application
EOT

Download Icon

sudo wget -O /usr/share/pixmaps/ddc-toolbox.png https://raw.githubusercontent.com/ThePBone/DDCToolbox/master/img/icon.png -q --show-progress

Manually (macOS)

Note: these installation steps are untested but should still work.

Install Homebrew

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Install QT

brew install qt5

Symlink QT

brew link qt5 --force

Clone the repo

git clone --recurse-submodules https://github.com/ThePBone/DDCToolbox

Compile it

cd DDCToolbox
qmake
make

Run it open ./DDCToolbox.app

Contributors

License

This project is licensed under GPLv3.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, 
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR 
THE USE OR OTHER DEALINGS IN THE SOFTWARE.

More Repositories

1

GalaxyBudsClient

Unofficial Galaxy Buds Manager for Windows, macOS, Linux, and Android
C#
3,434
star
2

awesome-shizuku

Curated list of awesome Android apps making use of Shizuku
2,741
star
3

tachiyomi-extensions-revived

Revival of removed source extensions for the Tachiyomi app.
Kotlin
1,373
star
4

RootlessJamesDSP

An implementation of the system-wide JamesDSP audio processing engine for non-rooted Android devices
C
798
star
5

BudsPro-Headtracking

Stream head-tracking data from the Samsung Galaxy Buds Pro in real-time
Python
75
star
6

KomootGPX

Download Komoot tracks and highlights as GPX files (including metadata). Supports bulk-download
Python
67
star
7

FlatTabWidget

Animated minimalist tab widget for Qt
C++
65
star
8

DDCToolbox-Android

Create and edit VDCs on Android
Kotlin
44
star
9

galaxy-buds-firmware-archive

An archive of firmware images for the Galaxy Buds family. Flashable with the GalaxyBudsClient application.
38
star
10

LiquidEqualizerWidget

Modern 15-band equalizer for C++/Qt
C++
37
star
11

SlidingStackedWidget

Animated stacked widget for Qt
C++
35
star
12

SamsungServiceModeOTP

Generate OTP tokens for Samsung Service Mode to activate hidden debug/dumping features. (*#9900#)
Java
32
star
13

XTimeMachine

Let apps travel back in time to circumvent timed app trials. Requires LSPatch (no root) or Xposed.
Kotlin
20
star
14

GalaxyBuds-BatteryLevel

Simple python script to read battery values from the Samsung Galaxy Buds
Python
20
star
15

BudsProAnalysis

Leak and disassembly of the unreleased Galaxy Buds Pro plugin app
Java
17
star
16

MsiEcRamEditor

Edit and dump the RAM of the EC chip of MSI laptops via ACPI-WMI
C#
14
star
17

AutoEqPackages

Minified and compressed AutoEQ packages
Python
14
star
18

AutoEqApi

API to cache and distribute equalization data from the AutoEQ project
C#
14
star
19

FirmwareProviderAPI

Unofficial distribution API of firmware for devices of the Galaxy Buds family
C#
14
star
20

GalaxyBudsFirmwareDownloader

Download firmware images for Buds(+) devices from Samsung's official servers
Python
13
star
21

GraphicEQWidget

GraphicEQ for Qt (based on EAPO)
C++
11
star
22

RootActivityLauncher

Launch all hidden, restricted and unexported activities in Android via Root
Kotlin
11
star
23

SamsungFumoClient

Advanced OMA-DM client with FUMO capabilities designed for retrieving firmware updates and their metadata from Samsung's official servers
C#
11
star
24

QAnimatedSlider

Extended slider widget with animation capabilities
C++
10
star
25

QEqualizerView

Simple equalizer widget for Qt
C++
10
star
26

SamsungFumoScraper

WebAssembly-based web application that is capable of download Samsung OTA firmware files directly from the browser via Samsung's OMA-DM FUMO service.
HTML
10
star
27

CscKeystringDecrypt

Decrypt encrypted Samsung OMR/CSC files (especially keystring.dat)
Java
8
star
28

PPA-Repository

PPA for various packages
Shell
7
star
29

QEditableListView

ListView for Qt with movable items
C++
7
star
30

msi-ec-modern

Fork of msi-ec with support for MSI Modern 15 A11M (Business series)
C
7
star
31

ThePBone

6
star
32

LiveprogIDE

Basic embeddable Liveprog IDE, currently supports EELang2 (JamesDSP for Linux)
C++
6
star
33

Mitsukeru

Rank and collect anime/manga recommendations based on your personal AniList.co profile
C#
6
star
34

JDSP4Linux-GUI

User Interface for JamesDSP on Linux
C++
6
star
35

ScreenCapture.NET

Low-level screen capturing library for .NET Core; supports only X11/Linux currently
C#
5
star
36

GalaxyBuds2-Leak

Data-mining write-up
5
star
37

jadx-type-diagram-plugin

Type diagram plugin for JADX decompiler
Java
5
star
38

GalaxyBudsFirmwareExtractor

Java
5
star
39

RobomasterCheatsheet

Robomaster Python API Cheatsheet
Python
4
star
40

Viper4Windows-GUI

Repainted Viper4Windows UI
C#
4
star
41

BudsPro-AcceleratorPolling

'Stream' accelerator sensor data from the Samsung Galaxy Buds Pro (slow)
Python
4
star
42

onboard-plasmoid

A KDE plasmoid that displays live local telemetry data about the train you're sitting in
C++
4
star
43

Ws2812LedController

Advanced LED controller software for the raspberry pi with a remote client application
C#
4
star
44

flatpak-repo

Personal flatpak repository
4
star
45

JDSP4Linux

Port of the opensource version of JamesDSP to Linux
Shell
4
star
46

linux-stuff

My personal dotfiles backup, utilities, tricks and other stuff
Shell
3
star
47

TVNow-Scraper

Download M3U HLS playlist stream files directly from the server of TVNow and WatchBox
C++
3
star
48

geq2imp

Create impulse responses from CSV frequency responses
C
3
star
49

ArduinoStuff

Some old arduino code (small OS for TFT display, onscreen-keyboard, rtc)
C
2
star
50

app-crawler

Python
2
star
51

Viper4Windows-Translation

German Translation for V4W
2
star
52

plasma6-default-dynamic-wallpaper

Config files for the plasma-wallpapers-dynamic wallpaper plugin
Shell
2
star
53

Viper4Linux-GUI-PPA

PPA repository for the Viper4Linux GUI
Shell
2
star
54

CrunchyrollDownloaderPy

Python version of my crunchyroll downloader (prototype)
Python
2
star
55

GalaxyBudsLive-Disassembly

Analysis of unreleased Galaxy Buds Live "neobeans" plugin app for Android
Java
2
star
56

AssemblyExamples

A small collection of assembler examples
Assembly
1
star
57

IRSerialSender

Converts serial commands to impulses, which will be sent to a color strip
C++
1
star
58

dotfiles

My dotfiles for Linux systems
Shell
1
star
59

PyMatrix

64x32 LED Matrix Controller
Python
1
star
60

LEDMatrixDashboardAVR

Simple Dashboard displaying time and temperature on a LED matrix using an Arduino Mega
C++
1
star
61

ThePBone.WbXml2

Managed wrapper around libwbxml2
C#
1
star
62

mkdlc-touhou-spellbubble

Generate DLC packages from scratch
Shell
1
star