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.7a3

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.7a3
File Size Uploaded
ovos_audio-2.2.7a3.tar.gz 26.9 kB Details

Built distribution (wheel)

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

Total release size: 59.0 kB

Release files / ovos_audio-2.2.7a3.tar.gz

Download URL ovos_audio-2.2.7a3.tar.gz
Size 26.9 kB
Tags Source
SHA-256 checksum
How to use checksums
9e80a516ca3948cca342cd598098c54e44ca5c0eb2ce10a2ff513840396554fb
BLAKE2b-256 checksum
How to use checksums
70ec1140552f7d4a832dcacf17969a9954d8583b4ca66de31cc7f5c827fb9687
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.7a3-py3-none-any.whl

Download URL ovos_audio-2.2.7a3-py3-none-any.whl
Size 32.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7f74dd1d5f22b45b54aa900eccbc70a144fc5eb3313dafcdb82c8aa6c076db2e
BLAKE2b-256 checksum
How to use checksums
48df433ff446bb86eff47ecc7430376994294ad8dfe43bd9be6a663c2bc71479
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.7a3 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