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.1.tar.gz (18.3 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.1-py3-none-any.whl (23.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: voicepad_core-0.1.1.tar.gz
  • Upload date:
  • Size: 18.3 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.1.tar.gz
Algorithm Hash digest
SHA256 ac24530f0b9a9e746569d87bbbea303390f4f0d929473b3897d4f39d30ca8994
MD5 8332e215079bc4ce4a0aed2164abbefb
BLAKE2b-256 194b908ac1c57bf1a9daf452e61bf17fc917dc3df804fb2db4b73bb42ca3c552

See more details on using hashes here.

File details

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

File metadata

  • Download URL: voicepad_core-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 23.9 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 87498ef3428f574682dad9f38c2f049dcab17e2f493f6a0f9b4708e9223798b8
MD5 43c7c94d7b2cbaf49fa52d5d20347871
BLAKE2b-256 fe36b2df8d0ba15579967ab2475257ae7b59aa7dd88f43c798363b8c87cd742c

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