Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[project-s] 音声再生周りと音声の書き出しを行う機能の実装 #1041

Closed
7 tasks done
sigprogramming opened this issue Dec 10, 2022 · 3 comments
Closed
7 tasks done
Assignees

Comments

@sigprogramming
Copy link
Contributor

sigprogramming commented Dec 10, 2022

内容

音声再生周りと音声の書き出しを行う機能を実装します。

実現方法

2つ方法があります。

HTMLAudioElementを使用する

  • 出力デバイスを指定できる
  • 再生しながら音声をミックス(結合)することができない

WebAudioAPIを使用する

  • 出力デバイスを指定できない
  • リアルタイムで音声処理(ミックス)できる
    • コンプレッサーなども利用できる

出力デバイスを変更できたほうが便利だと思いますが、一般的な環境・使用方法では、出力デバイスを既定のデバイスから変更することはほとんどないと思います。
また、再生と歌声の合成を同時に行ったり、伴奏と一緒に再生したりすることを考えると、WebAudioAPIを使用したほうが良さそうです。

ひとまず、WebAudioAPIを使用する方法で実装していきます。

音声再生周り

  • テンポを元にティックと秒を相互に変換
  • 再生・停止
    • 発音のスケジュール
    • シンセで簡易的に再生(デバッグしやすくするため)
  • 再生位置の設定(シーク)と表示
  • 音量の設定

音声の書き出し

  • wav形式で書き出し

関連issue

VOICEVOX/voicevox_project#15

@Hiroshiba
Copy link
Member

issue作成ありがとうございます!!
出力デバイス指定できないのは他たまに不便かもしれませんが、ストリーミングなどの処理が簡単そうなのでWebAudioAPIにする方針で賛成です…!

@sigprogramming
Copy link
Contributor Author

ループ機能を実装する前に、一旦リファクタリングを行います。

@sigprogramming
Copy link
Contributor Author

こちらcloseします!
リファクタリング・ループ再生の実装は新しくissueを立てて行おうと思います!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants