Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

ovos-audio

ovos-audio is the audio daemon for OpenVoiceOS. It handles text-to-speech (TTS) synthesis and sound playback, and it runs as a background service that connects to the OVOS MessageBus.


Install

pip install ovos-audio[extras]

The extras group installs this package with the default plugins. Without it, you must install and configure TTS modules yourself, as described below.


Configuration

ovos-audio reads its settings from mycroft.conf.

{

  // Text to Speech parameters
  "tts": {
    "module": "ovos-tts-plugin-server",
    "fallback_module": "ovos-tts-plugin-mimic",
    "ovos-tts-plugin-mimic": {
        "voice": "ap"
    }
  },

  // File locations of sounds to play for system events
  "sounds": {
    "start_listening": "snd/start_listening.wav",
    "end_listening": "snd/end_listening.wav",
    "acknowledge": "snd/acknowledge.mp3",
    "error": "snd/error.mp3"
  },

  // Mechanism used to play WAV audio files
  "play_wav_cmdline": "paplay %1 --stream-name=mycroft-voice",

  // Mechanism used to play MP3 audio files
  "play_mp3_cmdline": "mpg123 %1",

  // Mechanism used to play OGG audio files
  "play_ogg_cmdline": "ogg123 -q %1"
}

Persona Support

ovos-audio supports dialog-transformer plugins that rewrite generated speech to match a tone or persona. See the technical manual's dialog transformers page for the full transformer chain and priority rules.

For example, ovos-solver-plugin-openai-persona rewrites text before synthesis, based on a persona string. Sample personas:

  • "rewrite the text as if you were explaining it to a 5-year-old"
  • "rewrite the text as if it was an angry old man speaking"
  • "Add more 'dude'ness to it"

Example input and output with the "explain to a 5-year-old" persona:

  • Input: "Quantum mechanics is a branch of physics that describes the behavior of particles at the smallest scales."
  • Output: "Quantum mechanics is like a special kind of science that helps us understand really tiny things."

To enable the plugin, add this to mycroft.conf:

"dialog_transformers": {
    "ovos-dialog-transformer-openai-plugin": {
        "rewrite_prompt": "rewrite the text as if you were explaining it to a 5-year-old"
    }
}

Using Legacy AudioService

The legacy audio service handles audio playback through the old Mycroft API. See the implementation in mycroft-core and ovos-bus-client.

By default, OCP delegates to the legacy audio service when needed, so no action is required. If you disable OCP, this API becomes the sole media playback provider.

Note: once ovos-media is released, OCP and this API will be disabled by default and deprecated.

See docs/audio-service.md for the module reference, and the technical manual's OCP audio plugin page for how OCP relates to this subsystem.

{
    "enable_old_audioservice": true,
    "disable_ocp": true,
    "Audio": {
        "default-backend": "vlc",
        "backends": {
          "simple": {
            "type": "ovos_audio_simple",
            "active": true
          },
          "vlc": {
            "type": "ovos_vlc",
            "active": true
          }
        }
    }
  },
}

Legacy backend plugins:

About OCP:

  • OCP was developed for mycroft-core under the legacy audio service system.
  • OCP is always the default audio plugin, unless "disable_ocp": true is set in the config.
  • OCP uses the legacy API internally to delegate playback when the GUI is unavailable, or when configured to do so.
  • OCP does not support old Mycroft CommonPlay skills. The "ocp_legacy" pipeline in ovos-core handles that instead.
  • ovos-media will fully replace OCP in ovos-audio 1.0.0.

Related Projects

  • ovos-media, the replacement for OCP and the legacy audio service
  • ovos-core, the assistant core that starts and manages ovos-audio
  • ovos-plugin-manager, plugin discovery for TTS, G2P, and audio backends
  • ovos-bus-client, the MessageBus client used to communicate with ovos-audio

See docs/index.md for a full architecture overview.


License

ovos-audio is licensed under the Apache License 2.0.

Metadata

Release files for ovos-audio 2.2.3a2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ovos-audio 2.2.3a2
File Size Uploaded
ovos_audio-2.2.3a2.tar.gz 26.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ovos-audio 2.2.3a2
File Interpreter ABI Platform
ovos_audio-2.2.3a2-py3-none-any.whl Python 3 none any Details

Total release size: 58.2 kB

Release files / ovos_audio-2.2.3a2.tar.gz

Download URL ovos_audio-2.2.3a2.tar.gz
Size 26.6 kB
Tags Source
SHA-256 checksum
How to use checksums
e94f49eaf50b7ae710e9453e8b674bf0af612a0427b5d6a0ab8792c1a05dbce1
BLAKE2b-256 checksum
How to use checksums
1f76d3c3820317cd0ff15706c0c78a6caee3e4b57b708f7d31bb9ee10efacec4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / ovos_audio-2.2.3a2-py3-none-any.whl

Download URL ovos_audio-2.2.3a2-py3-none-any.whl
Size 31.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1341792eb85f3e4424c098bd1eb9b3e189c3c72bd5b171ac624d6bb4ed4299f5
BLAKE2b-256 checksum
How to use checksums
08ed989a44762bfa45b01505789ef6224c7762d5cae875048c1e27a7ba270b07
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

2.2.3a2 This release

2 release files

1.2.0

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.1

2 release files

0.4.0

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.0

2 release files

0.0.2

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page