Skip to main content

No project description provided

Project description

Audex

Smart Medical Recording & Transcription System with voice recognition and speaker identification.


Requirements

  • Python 3.10-3.13
  • Poetry
  • PortAudio (for audio processing)
  • FFmpeg (for audio format conversion)
  • PyQt6 (Linux: install from system packages)

System Dependencies

Ubuntu/Debian:

sudo apt-get install portaudio19-dev ffmpeg python3-pyqt6 python3-pyqt6.qtwebengine

macOS:

brew install portaudio ffmpeg

Windows:


Development

Install Dependencies

# Development environment
poetry install --extras dev

# Testing environment
poetry install --extras test

# Documentation environment
poetry install --extras docs

Build Package

# Build wheel and sdist
poetry build

# Output: dist/audex-{version}-py3-none-any.whl

Run Tests

poetry install --extras test
poetry run pytest

Documentation

poetry install --extras docs
poetry run mkdocs serve

# Visit: http://127.0.0.1:8000

Usage

Run Application

# Start with config file
audex -c config.yaml

# Using installed package
python -m audex -c config.yaml

Initialize Configuration

# Generate default configuration
audex init gencfg --format yaml --output config.yaml

# Generate system configuration (Linux)
audex init gencfg --format system --output /etc/audex/config.yml --platform linux

Initialize VPR Group

# Initialize voice print recognition group
audex init vprgroup --config config.yaml

File Export Server

# Start file export server
audex serve --config config.yaml

Installation

From PyPI

pip install audex

From Source

git clone https://github.com/6ixGODD/audex.git
cd audex
poetry install

DEB Package (Debian/Ubuntu/Raspberry Pi)

Download from Releases:

sudo dpkg -i audex_{version}_arm64.deb
sudo apt-get install -f

Post-installation:

# Run configuration wizard
audex-setup

# Initialize VPR group
audex init vprgroup --config ~/.config/audex/config.yml

# Start application
audex

# (Optional) Enable auto-start
systemctl --user enable audex
systemctl --user start audex

DEB Package Development

Build DEB Package

Prerequisites:

  • Docker (for cross-platform builds)

Build:

cd packaging/linux

# Build for Raspberry Pi (arm64)
./build.sh

# Build for amd64
./build.sh amd64

Output: dist/audex_{version}_{arch}.deb

Test DEB Package

cd packaging/linux
./test.sh

Inside test container:

# Install package
sudo dpkg -i /tmp/audex.deb
sudo apt-get install -f

# Verify installation
which audex
audex --version

# View configurations
cat /etc/audex/config.system.yml
cat /etc/audex/config.example.yml

# Run configuration wizard
audex-setup

# Exit container
exit

Manual Build (Without Docker)

On Debian/Ubuntu:

cd packaging/linux

# Install build dependencies
sudo apt-get install dpkg-dev

# Build package
python3 build_in_docker.py {version} {arch}

# Example
python3 build_in_docker.py 1.0.1 arm64

Configuration

Configuration file structure:

core:
  app:
    app_name: Audex
    native: true
  logging:
    targets:
      - logname: stdout
        loglevel: info
  audio:
    sample_rate: 16000

provider:
  transcription:
    provider: dashscope
    dashscope:
      credential:
        api_key: <YOUR_API_KEY>

  vpr:
    provider: xfyun
    xfyun:
      credential:
        app_id: <YOUR_APP_ID>
        api_key: <YOUR_API_KEY>
        api_secret: <YOUR_API_SECRET>

infrastructure:
  sqlite:
    uri: "sqlite+aiosqlite:///path/to/audex.db"
  store:
    type: localfile
    base_url: /path/to/store

See .config.example.yml for full configuration options.


Project Structure

audex/
├── audex/                 # Main package
│   ├── cli/               # CLI
│   ├── service/           # Business layer
│   ├── entity/            # Entities
│   ├── filters/           # Data filters
│   ├── valueobj/          # Value objects
│   ├── view/              # View layer
│   └── lib/               # Shared libraries
├── packaging/
│   └── linux/             # DEB packaging
│       ├── templates/     # Package templates
│       ├── build.sh       # Build script
│       └── test.sh        # Test script
├── scripts/               # Development scripts
├── tests/                 # Test suite
└── pyproject.toml         # Project configuration

Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

audex-1.0.5a0.tar.gz (196.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

audex-1.0.5a0-py3-none-any.whl (285.5 kB view details)

Uploaded Python 3

File details

Details for the file audex-1.0.5a0.tar.gz.

File metadata

  • Download URL: audex-1.0.5a0.tar.gz
  • Upload date:
  • Size: 196.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for audex-1.0.5a0.tar.gz
Algorithm Hash digest
SHA256 a34032aba1ed153febfa4048e4ed676bc4715326e01932d8beed958b30718d01
MD5 53eca2739029915ece8fca7228737aa8
BLAKE2b-256 676fa1e8288d573efaf4feca967148638c3bc7e11edf39e3324030a2a08d5531

See more details on using hashes here.

Provenance

The following attestation bundles were made for audex-1.0.5a0.tar.gz:

Publisher: publish.yml on 6ixGODD/audex

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file audex-1.0.5a0-py3-none-any.whl.

File metadata

  • Download URL: audex-1.0.5a0-py3-none-any.whl
  • Upload date:
  • Size: 285.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for audex-1.0.5a0-py3-none-any.whl
Algorithm Hash digest
SHA256 d9f25a47b133b86012eff71d36915b312dc04cb861a2d36c7e098279d6e7ff16
MD5 cfb5055bafe2e52ade475bd502868f29
BLAKE2b-256 6890710d1bf691389cbd413494ae3996cba928d8432fe010178aaee36bf7b543

See more details on using hashes here.

Provenance

The following attestation bundles were made for audex-1.0.5a0-py3-none-any.whl:

Publisher: publish.yml on 6ixGODD/audex

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page