openly-jp / voiscribe

1 stars 0 forks source link

録音および音声再生に適切なカテゴリを設定する #285

Closed shibukazu closed 1 year ago

shibukazu commented 1 year ago

context

音声の再生においても.playAndRecordを利用していることから下記のような制約が生じている。 https://github.com/openly-jp/voiscribe/compare/fix/line-call-bug?expand=1

上記の状態を解決するためには、各機能(音声再生および録音)ごとに適切なカテゴリを設定するべき しかし、下記の理由からすぐには難しい

related to https://github.com/openly-jp/voiscribe/issues/156

ooyamatakehisa commented 1 year ago

下記のような制約というのは、どの制約?

shibukazu commented 1 year ago

Close Context https://github.com/openly-jp/voiscribe/pull/286#issuecomment-1573884514

@shibukazu 自分が、昔AVAudioSessionのカテゴリを.playAndRecordにしてたのは、 録音(認識)中も過去に録音したやつだったり、他のアプリの音を聞けるようにしたほうがいいなと思ったからで、[公式doc](https://developer.apple.com/documentation/avfaudio/avaudiosession/category/1616451-record)に

This category has the effect of silencing virtually all output on the system, for as long as the session is active. Unless you need to prevent any unexpected sounds from being played, use [playAndRecord](https://developer.apple.com/documentation/avfaudio/avaudiosession/category/1616568-playandrecord) instead.

と書いてあって、.recordにしてしまったらおそらく他の音が聞こえなくなってしまうんよね。ほいで、音声再生と録音が同時に起こりうるなら音声再生の方だけ.playbackには設定できないということで、今の状態になってる。

まあ通話してる状態からこのアプリ使おうっていう場面もそうそうないと思うし個人的にはカテゴリは今のままでいいと思うんやけど、どうでしょう!

確かに
「他のアプリで通話中にVoiScribeで音声再生」よりも「VoiScribeで録音中に他のアプリで再生」の方が需要がありそうなので.playAndRecord継続に賛成です。
Issueはクローズします。