Wiki Home
Developer Notes
Directory Layout
| Directory |
Notes |
| bin |
binaries |
| conv |
BDJ3 Conversion utilities |
| data |
BDJ4 data |
| devel |
Development flags |
| http |
Files for mobile marquee and mobile remote control |
| img |
Images |
| install |
Installation utilities, scripts, data |
| licenses |
License information |
| locale |
Processed locale files |
| packages |
Third-party software |
| pkg |
Packaging utilities |
| plocal |
Third-party libraries |
| scripts |
Helper scripts for the BDJ4 installation |
| src |
Source, see below |
| templates |
Templates for the data files |
| test-templates |
Templates for testing |
| test-templates/tests |
testsuite test scripts |
| tmp |
BDJ4 Temporary files |
| web |
Website files and helper scripts |
| wiki |
Sourceforge wiki files |
| wiki-i |
Sourceforge wiki images |
src/ Directory Layout
General
| Files |
Notes |
| config.h.in |
base configuration file for cmake |
| Makefile |
makefile to run build, tests, etc. |
| Directory |
Notes |
| libcommon |
common utilities that do not use lists nor libicu |
| libbasic |
lists, basic utilities that use lists and/or libicu |
| libbdj4 |
bdj4 specific utilities |
| libwebclient |
web client (uses curl) |
| libwebsrv |
web server (uses mongoose) |
| mongoose |
third-party web server |
Audio Interaces
| Directory |
Notes |
| libati |
audio tagging interface (dynamic libraries) This was written as a dynamic library since at one point, both mutagen and the bdj4-ati interfaces were in process. |
| libaudioid |
audio identification |
| libaudiosrc |
audio source interface |
| libcont |
music controller (dynamic libraries) |
| libmpris |
Linux MPRIS interface |
| libpli |
player interface (dynamic libraries) |
| libvol |
volume interface (dynamic libraries) |
User Interface
| Directory |
Notes |
| libuibase |
generic ui stuff (libbdj4uib) |
| libuicommon |
bdj4 major ui for both player and manager (libbdj4uic) |
| libuigeneral |
ui widget container and non-specific ui routines. |
| libuiintfc |
bdj4 general ui interfaces (libbdj4uii) |
| libuimanage |
bdj4 major/minor ui specific to manageui (libbdj4uim) |
| libuiplayer |
bdj4 minor ui specific to playerui (libbdj4uip) |
| Directory |
Notes |
| libuicurses |
curses gui layer (not started) |
| libuigtk3 |
gtk3 gui layer |
| libuimacos |
macos gui layer |
| libuinull |
null gui layer |
Applications
| Directory |
Notes |
| configui |
configuration ui |
| installer |
self-extractor, installer, alt-installer, updater |
| manageui |
management ui, database updater, bpm counter, podcast updater |
| player |
the main player process, the player process, marquee, mobile marquee and remote control. Only the marquee has the ui linked in. |
| playerui |
player ui |
| server |
BDJ4 Audio Server |
| starter |
the launcher and starter process |
Other
| Directory |
Notes |
| build |
cmake build directory |
| check |
C language test programs |
| include |
include files |
| include/ui |
ui include files |
| po |
localization |
| po/po |
localization: .po files for BDJ4 |
| po/web |
localization: .po files for the website |
| utils |
various utility scripts and files |
| utility |
various utility programs used in testing |
Wiki Home
(Updated 2025-11-24 13:59:21; BDJ4 version 4.17.5)