# Lyra コーデック機能

> **注意**
>
> Lyra コーデック機能は実験的機能のため、正式版では仕様が変更される可能性があります

## 概要

Google が公開している超低ビットレートで利用可能な音声コーデック [Lyra](https://github.com/google/lyra) を利用可能にする機能です。

Lyra についての詳細は Google の記事をご確認ください。

[Lyra V2 - a better, faster, and more versatile speech codec | Google Open Source Blog](https://opensource.googleblog.com/2022/09/lyra-v2-a-better-faster-and-more-versatile-speech-codec.html)

## 機能

- 音声コーデックに Opus とは別に Lyra を指定することが可能になります
- ビットレートも 3200 / 6000 / 9200 bps の 3 種類が指定可能です

### 対応ブラウザ

[WebAssembly 化した Lyra](https://github.com/shiguredo/lyra-wasm) と [WebRTC Encoded Transform API](https://www.w3.org/TR/webrtc-encoded-transform/) を利用する事で、
Chrome / Edge / Safari で利用可能です。Firefox には対応していません。

### 対応 SDK

- JavaScript SDK
- C++ SDK

## 独自対応

Lyra 用の SDP は独自機能です。


```
a=rtpmap:109 lyra/16000/1
a=fmtp:109 version=1.3.0;bitrate=6000;usedtx=1
```

- version- Lyra のバージョンが入ってきます- SDK が対応している Lyra と受信した sdp の Lyra のバージョンが異なる場合 SDK 側でエラーを出力する場合があります
- bitrate- 3200 / 6000 / 9200 のどれかが入ってきます
- usedtx- DTX を利用するかどうかです- 利用する場合は 1 、利用しない場合は 0 が入ってきます- Lyra はデフォルトで DTX を利用します
