38 lines
2.8 KiB
Markdown
38 lines
2.8 KiB
Markdown
---
|
|
layout: developersguide
|
|
title: Audio & Voice
|
|
---
|
|
|
|
{% include base.html %}
|
|
|
|
# Audio & Voice
|
|
|
|
openHAB provides a modular architecture that enables all kinds of different use cases.
|
|
At its core, there is the notion of an _audio stream_.
|
|
|
|
Audio streams are provided by _audio sources_ and consumed by _audio sinks_.
|
|
Each binding for handling and controlling audio services can implement an audio sink to provide their supported devices to the framework to be used as sound output.
|
|
|
|
An audio sink is identified by an unique id which in general is similar to the thing type id.
|
|
The framework itself can handle multiple audio sinks at the same time.
|
|
|
|
## Build-in Audio Sinks
|
|
|
|
The distribution comes with these built-in audio sinks options:
|
|
|
|
| Output device | Audio sink | Description |
|
|
|-------------------|-----------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|
| javasound | System Speaker | This uses the JRE sound drivers to play audio to the local sound interface. |
|
|
| enhancedjavasound | System Speaker (with mp3 support) | This uses the JRE sound drivers plus an additional 3rd party library, which adds support for mp3 files. |
|
|
| webaudio | Web Audio | If sounds should not be played on the server but on the client: This sink sends the audio stream through HTTP to web clients, which then cause it to be played back by the browser. The browser needs to be opened and have a compatible UI running. Currently this feature is supported by Paper UI and HABPanel. |
|
|
|
|
The framework is able to play sound either from the file system, from URLs (e.g. Internet radio streams) or generated by text-to-speech engines (which are available as optional Voice add-ons).
|
|
|
|
## Audio sink implementation
|
|
|
|
TODO
|
|
|
|
## Audio source implementation
|
|
|
|
TODO
|