You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP
Socket
Book a DemoInstallSign in
Socket

pyvoicecraft

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

pyvoicecraft

Advanced voice processing package with comprehensive TTS and speech recognition capabilities

1.0.0
Source
pipPyPI
Maintainers
1

PyVoiceCraft

PyVoiceCraft is an advanced voice processing package that provides comprehensive text-to-speech (TTS) and speech recognition capabilities with 100% more functionalities than existing packages.

Features

  • 🎤 Advanced Speech Recognition - Multiple engine support with continuous listening
  • 🔊 Text-to-Speech - High-quality voice synthesis with customizable profiles
  • 👤 Voice Profiles - Personalized voice settings (male/female, pitch, speed)
  • 🎵 Audio Processing - Pitch modification, speed control, echo effects, volume normalization
  • 💬 Voice Commands - Command processing and execution system
  • 📝 Conversation History - SQLite-based conversation tracking
  • 🎯 Custom Dictionary - Add custom word pronunciations
  • 📊 Voice Memos - Record and save audio memos
  • 📈 Usage Statistics - Track voice usage patterns
  • 🔄 Async Support - Non-blocking voice operations

Installation

pip install pyvoicecraft

Dependencies

PyVoiceCraft requires the following packages:

  • pyttsx3>=2.90 - Text-to-speech engine
  • SpeechRecognition>=3.8.1 - Speech recognition
  • PyAudio>=0.2.11 - Audio processing
  • numpy>=1.19.0 - Numerical operations
  • scipy>=1.5.0 - Scientific computing

Quick Start

Basic Text-to-Speech

from pyvoicecraft import speak

# Simple text-to-speech
speak("Hello, welcome to PyVoiceCraft!")

# With different voice
speak("This is a male voice", voice="male")
speak("This is a female voice", voice="female")

Voice Recognition

from pyvoicecraft import listen

# Listen for voice input
text = listen(timeout=5)
print(f"You said: {text}")

Advanced Usage

from pyvoicecraft import PyVoiceCraft

# Create instance
ps = PyVoiceCraft()

# Set voice profile
ps.set_profile("female")

# Speak with custom settings
ps.speak("Hello world!", save_to_file="greeting.wav")

# Start conversation
def handle_response(text):
    return f"You said: {text}"

ps.start_conversation(callback=handle_response)

Voice Profiles

from pyvoicecraft import PyVoiceCraft, VoiceProfile

ps = PyVoiceCraft()

# Create custom profile
custom_profile = VoiceProfile(
    name="assistant",
    gender="female",
    age=25,
    accent="neutral",
    pitch=1.1,
    speed=1.2
)

ps.add_profile(custom_profile)
ps.set_profile("assistant")
ps.speak("Hello with custom voice profile!")

Voice Commands

from pyvoicecraft import PyVoiceCraft

ps = PyVoiceCraft()

# Add voice commands
def time_command(text):
    ps.speak_time()

def date_command(text):
    ps.speak_date()

ps.commands.add_command("time", time_command, ["what time", "current time"])
ps.commands.add_command("date", date_command, ["what date", "today"])

# Start listening for commands
ps.commands.start_listening()

Audio Effects

from pyvoicecraft import PyVoiceCraft

ps = PyVoiceCraft()

# Apply audio effects
effects = {
    "echo": {"delay_ms": 500, "decay": 0.3},
    "pitch": {"factor": 1.2},
    "speed": {"factor": 0.9}
}

ps.speak("This text has audio effects", effects=effects)

API Reference

Main Classes

  • PyVoiceCraft - Main class with all functionalities
  • VoiceProfile - Voice profile management
  • VoiceRecognizer - Speech recognition handling
  • VoiceCommands - Command processing
  • AudioProcessor - Audio effects and processing

Quick Functions

  • speak(text, voice="female", **kwargs) - Quick text-to-speech
  • listen(timeout=5, language="en-US") - Quick voice recognition
  • create_male_voice() - Create male voice instance
  • create_female_voice() - Create female voice instance
  • get_available_voices() - List system voices

Examples

Voice Memo Recording

from pyvoicecraft import PyVoiceCraft

ps = PyVoiceCraft()
memo_path = ps.create_voice_memo(duration=10)
print(f"Voice memo saved to: {memo_path}")

Custom Word Pronunciation

from pyvoicecraft import PyVoiceCraft

ps = PyVoiceCraft()

# Add custom pronunciations
ps.add_word("API", "A P I")
ps.add_word("JSON", "Jay-son")

ps.speak("The API returns JSON data")

Export/Import Data

from pyvoicecraft import PyVoiceCraft

ps = PyVoiceCraft()

# Export all data
ps.export_data("backup.json")

# Import data
ps.import_data("backup.json")

System Requirements

  • Python 3.7+
  • Windows, macOS, or Linux
  • Microphone (for speech recognition)
  • Speakers/headphones (for audio output)

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

  • Fork the repository
  • Create your feature branch (git checkout -b feature/amazing-feature)
  • Commit your changes (git commit -m 'Add amazing feature')
  • Push to the branch (git push origin feature/amazing-feature)
  • Open a Pull Request

Support

If you encounter any issues or have questions:

Changelog

v1.0.0

  • Initial release
  • Text-to-speech functionality
  • Speech recognition
  • Voice profiles
  • Audio processing effects
  • Voice commands
  • Conversation history
  • Custom dictionary support

Author

Kodukulla.Phani Kumar

⭐ If you find PyVoiceCraft useful, please give it a star on GitHub!

Keywords

voice

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts