Skip to main content

Core audio processing for Voicepad.

Project description

voicepad-core

Core Python library for voice recording, GPU-accelerated transcription, and system diagnostics.

Install

pip install voicepad-core

For GPU support (4-5x faster):

pip install voicepad-core[gpu]

Requirements: Python 3.13+

Quick Start

from voicepad_core import AudioRecorder, transcribe_audio, get_config

# Load configuration
config = get_config()

# Record audio
recorder = AudioRecorder(config)
audio_file = recorder.start_recording()
# Press Ctrl+C to stop

# Transcribe the audio file
output_file = config.markdown_path / "transcript.md"
stats = transcribe_audio(audio_file, output_file, config)
print(f"Transcribed: {stats['word_count']} words")

Key Components

Audio Recording

from voicepad_core import AudioRecorder, get_config

config = get_config()
recorder = AudioRecorder(config)
audio_file = recorder.start_recording()  # Press Ctrl+C to stop

Transcription

from voicepad_core import transcribe_audio, get_config

config = get_config()
stats = transcribe_audio(
    audio_file=Path("recording.wav"),
    output_file=Path("transcript.md"),
    config=config
)

System Diagnostics

from voicepad_core import gpu_diagnostics, get_ram_info, get_cpu_info

gpu = gpu_diagnostics()
ram = get_ram_info()
cpu = get_cpu_info()

print(f"GPU available: {gpu.faster_whisper_gpu.success}")
print(f"Available RAM: {ram.available_gb} GB")

Model Recommendations

from voicepad_core import (
    get_model_recommendation,
    get_available_models,
    get_ram_info,
    get_cpu_info,
    gpu_diagnostics
)
from voicepad_core.diagnostics.models import SystemInfo

system_info = SystemInfo(
    ram=get_ram_info(),
    cpu=get_cpu_info(),
    gpu_diagnostics=gpu_diagnostics()
)
recommendation = get_model_recommendation(system_info, get_available_models())
print(f"Recommended model: {recommendation.recommended_model}")

Configuration

Create voicepad.yaml:

recordings_path: data/recordings
markdown_path: data/markdown
input_device_index: null
transcription_model: tiny
transcription_device: auto
transcription_compute_type: auto

Documentation

Supported Models

All OpenAI Whisper models are supported:

  • tiny - Fastest (39M)
  • base - Fast (74M)
  • small - Balanced (244M)
  • medium - Accurate (769M)
  • large-v3 - Most accurate (1.5B)
  • turbo - Latest generation (809M)

Use get_available_models() to list all models.

Requirements

  • Python 3.13+
  • Audio device for recording
  • GPU (optional) for 4-5x faster transcription

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

voicepad_core-0.1.3.tar.gz (18.5 kB view details)

Uploaded Source

Built Distribution

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

voicepad_core-0.1.3-py3-none-any.whl (24.1 kB view details)

Uploaded Python 3

File details

Details for the file voicepad_core-0.1.3.tar.gz.

File metadata

  • Download URL: voicepad_core-0.1.3.tar.gz
  • Upload date:
  • Size: 18.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for voicepad_core-0.1.3.tar.gz
Algorithm Hash digest
SHA256 58854f3981d3da13eb0183c03dbe8bbda1ecf193322a3a67434dee3c3a594fef
MD5 332451feb97ab3560042e3f09707c573
BLAKE2b-256 c806c10db9b0f836b731e4bee808496e0844efde717dbdf38a948e8c4d68c85d

See more details on using hashes here.

File details

Details for the file voicepad_core-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: voicepad_core-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 24.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for voicepad_core-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 489533405103b9d6f20824a7f8b1d2b301b632e60aea0b8f8e5a2a11d2f71644
MD5 614d618c70d9ef7a0c7d6f9c772fe087
BLAKE2b-256 928fe9541a80834aa0e90bb27cd51161e0c3ce39f510bc0fd60718dea78aa43e

See more details on using hashes here.

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