Skyway Walkers

SkyWayを使ったサービスを個人開発しています

続:Google Chrome + Google Meet 使用時にマイク音量が勝手に下がる現象について

表題の現象について、以前ブログに現象についての記事を書きましたが、対策方法が分かりましたので、それについて書き残したいと思います。

現象

対策方法

以下のChromeの拡張機能で、マイク音量調整機能(Automatic Gain Control)を無効化

chrome.google.com

設定方法

上記の拡張機能のインストールだけだと、マイクの自動音量調整は無効化にならないので、サイトごとに無効化の設定をします。(Google Meetでマイクの自動音量調整を無効化したい場合は、Google Meetのページを開いた状態で、以下の手順を実施します)

  • マイクの音量調整機能を無効にしたいサイトで拡張機能を開く
  • 「Disable Automatic Gain Control」をクリック
  • アイコンに青の「On」マークが付けばOK

マイクを使うWebサービス開発での設定方法

Google Meet等では上記のような拡張機能を使用するしかないと思いますが、マイクを使うWebサービスを開発する場合、JavaScript側で以下のような設定すれば、マイク音量の自動調整がされなくなるようです。

AudioTrackに対して設定する場合
const audioTrack = stream.getAudioTracks()[0];
audioTrack.applyConstraints({
  autoGainControl: false
});
MediaStreamConstraintsに対して設定する場合
const constraints = {
  audio: {
    autoGainControl: false
  }
};

navigator.mediaDevices.getUserMedia(constraints)
  .then(function(stream) {
    // Use the stream
  })
  .catch(function(error) {
    // Handle the error
  });

参考サイト

 

喋ってる間だけ、WebカメラやPCの画面を録画してくれるWebサービス作りました

 音声認識で議事録を取る場合、どうしても誤認識/誤変換が発生するので、喋ってる間だけ録音/録画ができ、後からピンポイントで録音(録画)データを再生して確認できるWebサービスを作りました。

 音声認識の検知と同時に録音(録画)を開始するため、冒頭部分は録音(録画)されなかったり、録画処理が重いため安定動作しない部分もありますが、色々と面白い使い方ができそうなので、是非一度試してみてください。

 ※TalkSequerはアカウント登録不要で、無料で利用できます。

TalkSequer の主な機能

・チャット機能/音声認識による文字起こし
・喋ってる間だけ録音/録画(最大15秒間)
・録音/録画データの再生とダウンロード機能

基本的な利用方法

・Talk Sequerを起動
・① 名前を入力
・②「音声認識」の利用有無を選択
・③ 音声認識をトリガーに録画/録音をする場合はチェック
・④ 起動

・カメラとマイクの使用許可を聞かれるので音声認識や録音・録画機能を使用する場合はOKを選択してください。

録音/録画方法

・ユーザー設定で②にチェックされてる場合、喋り始めると録音が開始されます
・⑤のボタンを押す事でも録音が開始されます。


・録画したい場合、⑥ボタンを押して⑦Webカメラを選択します
・⑧スクリーンキャプチャを選択する事で、画面の録画も可能です


・Webカメラまたはスクリーンキャプチャを選択するとプレビューが表示されます

録音/録画されたデータの再生とダウンロード

・チャットメッセージの横の⑨再生ボタンを押すと録音(録画)データが再生されます。
・⑩のボタンから録音(録画)したデータをダウンロードできます(WebM形式)

他のメンバーも招待したい場合

・複数人で利用したい場合、オーナーメニューの⑪参加用URLをクリックするか、⑫「+」ボタンを押すと、参加用のURLがクリップボードにコピーされるので、招待したいメンバーにURLを伝えてください。

(注意事項)

・接続用のURLは毎回変わります
・ビデオ通話等と併用して利用する場合、各自ヘッドセットを使用してください
・招待されたメンバーにはチャットオーナーメニューがありません

招待された側の画面

データが保存されている場所について

・ブラウザのDB(IndexedDB)に保存されます
・ユーザー設定は各自のブラウザに保存されます。
・メッセージ/録音(録画)データは、チャットオーナーのブラウザに保存されます。
・ブラウザにデータが蓄積される為、定期的に⑬メッセージクリアしてください。

その他の注意事項

・PC版のGoogle Chrome専用のサービスです
・録画 及び 録画データの再生は、PCに高負荷が掛かる事があります
・録音/録画機能を使用する場合、少人数(1~4人程度)で利用を推奨します

最後に

・使ってみての感想や要望等がありましたら、遠慮なくコメントください。
・バージョンアップの通知や便利な使い方はTwitterで実施しますので、TalkSequerに興味がありましたら、是非フォローお願いします。

スマホからPCに、フリック入力を可能にするサービスについて

5年ほど前に大学生が開発した「フリック入力くん」という、スマホからPCにフリック入力できるサービスが公開されてバズったのですが、今でも使えるか試したところ、どうやらリンク切れしていて利用できない様子

私が開発していた「Communication Board」というサービスもスマホからPCにフリック入力が可能なので紹介します

 

使い方

・「Communication Board」をGoogle ChromeまたはMicrosoft Edgeで開く

・表示されたQRコードをスマートフォンで読み込む

 

・スマートフォンとPC画面に、それぞれ以下のように表示される

   

 

・スマートフォンでフリック入力した内容が、PC画面に表示される

  

 

・接続がうまくいかない場合(PC側で「接続しています」で止まる場合)
 スマホ側のメニューから「表示端末との再接続」を実行

  

他にも便利な機能はあるのですが

とりあえず今回はフリック入力の仕方のみの紹介でした

自作サービスが雑誌に掲載されたこと

 私が開発して公開中のWebサービス「Talk To CSV」がMr.PCという雑誌の2021年3月号にて紹介されていました。とくに掲載の連絡もなかったため、私が雑誌に掲載されたという事に気付いたのはつい最近です。(思えば「Talk To CSV」には自分の名前を入れてなかったですし、私の連絡先も判りづらい状態でした)

 掲載して頂いたことには感謝しかありません。Mr.PCさん、ありがとうございます!

 私が学生の頃はインターネットが普及しておらず、パソコンやプログラムの情報は、基本的に技術書や雑誌からしか得られない時代でした。

 私のプログラム人生は、父がファミコンと同時に買ってきてくれたファミリーベーシックから始まったのですが、

 小学生の頃は「マイコンBASICマガジン」(通称ベーマガ)に掲載されたファミリーベーシック用のプログラムを打ち込んでました。ベーマガは広告のページまで好きで、パソコンショップの広告を眺めながら、秋葉原にいつか行く事を夢見てました。

 中学生の頃は、工業高校に通っていた兄のポケコン(SHARPのPC-G801)を借りて「ポケコンジャーナル」に掲載されていたプログラムを打ち込んで遊んでました。その頃から、自分で簡単なプログラムも作り始め、将来はプログラマーになりたいと考えていました。

 あまり裕福な家庭ではなかったのですが、私の高校の入学祝いとして、父がPC-9801を買ってくれました。とても嬉しかった事を覚えています。しばらくはゲーム専用機になってしまって、当時はよく「LOGiN」という雑誌を読んでいたのを覚えています。

 プログラムは「C MAGAZINE」を買って、C言語の勉強してましたね。

 私の青春時代には、いつもパソコン雑誌が近くにあった気がします。そのせいか、自分の作ったプログラムがパソコン雑誌に掲載されるという事が、とても名誉なことに感じますし、とても嬉しい気持ちになりました。

 それと同時に、パソコンやプログラムに無限の可能性を感じてワクワクしていた学生時代の気持ちが鮮明に蘇りました。もう一度、あの頃のように夢を思い描いてみようかなと、そんな気持ちになりました。

 Mr.PCさんには重ねてお礼申し上げます。ありがとうございました。

ライブ配信やビデオ通話に、複数言語で字幕を付ける(OBS + Talk To CSV + Google翻訳)

こんにちは。iwatendoです。

 ライブ配信やビデオ通話サービスに、Google翻訳で複数言語の字幕を付けれる仕組みを作ってみたので紹介します。  

youtu.be

同時多言語翻訳のやり方について

 表題に書いた通り、Talk To CSV + OBS + Google翻訳を使用してます。

 Talk To CSVの使い方については以下のページにまとめましたので、使ってみたい方は以下のページを参考にしてください。

同時多言語翻訳の仕組みについて

 Talk To CSVはブラウザのみで動作するチャットサービスです。OBSにはTalk To CSVのチャットメッセージだけのWebページを表示しています。(OBS表示用に文字を大きくし背景を透過にしたWebページを準備しています)

 冒頭の動画では、OBSに4枚のブラウザソースを追加し、それぞれのページでGoogle翻訳をしています。 

さまざまなサービスへの適用

OBSに表示できる為、さまざまな用途に多言語翻訳が利用できます。

  • 動画作成(冒頭の動画もOBSで作成してます)
  • 動画配信 ( YouTube Live / Twitch 等)
  • ビデオ通話 ( Google Meet / Zoom / Discord / LINE 等)

実際にYouTube Liveで使って頂いた動画のアーカイブのご紹介

 もなかえりさんは、ずっとTalk To CSVを一番使ってくれている方で、今回の翻訳機能についても、もなかえりさんからTwitterで同時翻訳できないか相談を受けた事がきっかけでした。

 もなかえりさんは音声入力機能も使用しています。音声入力の誤変換も多いので、それプラス Google翻訳の誤変換で大変な事にならないか、例えば悪気が無くても物凄い凄い誤変換をしてしまって視聴者の方に不快な思いをさせてしまわないかとか、ちょっと視聴しててハラハラしてたりします(笑)。

 でも、もなかえりさんの配信の中で、外国の方が翻訳された字幕を見て、もなかえりさんにコメント欄で話かけているのを見て、少しだけジーンとしました。

 私の作った小さなWebサービスでも、誰かと誰かを繋ぐ事に役立てた気がして。

 まぁ、ほとんどGoogle翻訳のおかげなんですけどね(笑)

 

 さいごに、他にもこんな事ができたらいいのにな~という要望等ありましたら、できる範囲で考えてみますので、ブログのコメントかTwitterの方に気軽にご連絡ください。

 それでは。

 

f:id:iwatendo:20210228160324j:plain

Gerd AltmannによるPixabayからの画像

Google Chrome (Web Speech API) 複数ページへの同時音声入力について

こんにちは iwatendo です。

YouTube Live や Twitch配信で Talk To CSV を使ってくれている、もなかえりさんから以下のような相談を頂いたので、今日はちょっとそれについて書いていきます。

これはバグという訳じゃなくて無くて、基本的にGoogle ChromeのWeb Speech APIを利用しているサイトは、音声入力を同時に行うことができないようです。

例えば、Google翻訳等でも同時に音声入力で複数言語に翻訳しようとしても「現在、音声入力できません」というメッセージが表示され片方が音声入力ができなくなります。

f:id:iwatendo:20210227005708p:plain

 ただし、プロファイルが別々のGoogle Chromeの場合、音声入力の同時利用が可能となるようです。

以下の画像は、左側は通常起動したChromeで、右側が別プロファイルで起動したChromeで、音声入力が同時使用が可能になっています。(※Windows環境のみで確認。他環境でも実現可能かどうかは未検証です)

f:id:iwatendo:20210227010129p:plain

 別プロファイルでGoogle Chromeを起動する手順は以下の通りです。

  • まず、新しく Google Chrome のショートカットを作ります。
  • ショートカットのプロパティを開き、以下のような起動オプションを追加します
  • --user-data-dir={別プロファイルの保存先}
  • 例)--user-data-dir=D:\Chrome\TalkToCSV 
  • 上記で指定した場所に新しいGoogle Chromeのプロファイルが作成されます。 

f:id:iwatendo:20210227002335p:plain

  • 別プロファイルで起動した場合、最初はChromeにログインしていない状態で起動されます。
  • 一度ログインしてしまえば、後は通常Chromeと同じように利用できます。
  • 同一アカウントでも、別のアカウントでもログイン可能です。
  • 通常起動したChromeと、別プロファイルで起動したChromeのタブは、まとめる事ができないようです。
  • 別プロファイルは、起動オプションの保存先さえ変えれば、何個でも作れるようです。

別プロファイルを使用してTalk To CSVを使用する場合の注意点

  • 注意点としては、ブラウザ内データベース(IndexedDB)も別々に保持されるためTalk To CSVの「音声認識結果の文字列変換定義」等を登録をしている場合は、インポートしなおす必要があります。

 参考にさせて頂いたサイト:【Google Chrome】別のユーザー(別プロファイル)で複数Chromeを起動する方法 | CGメソッド