集約と応力集中

Keywords

文字起こし(YouTube 前編)

好きな動画、気になる動画。なんとか見たいけど外国語で断念。こんな時字幕を取りたい。
字幕は簡単に取得できるケースと、少し手間をかければ取れるケースがある。

YouTube 字幕

英語動画は YouTube の自動字幕機能が使えれば簡単にテキスト保存できる。
①「…」メニュー > Open transript(文字起こし)を開く。
②字幕テキストをコピペしファイル保存。誤変換もあるが、大筋特に問題なし。
YouTube 字幕なしの場合は音声入力機能+音声認識を利用する手が有る。

音声入力機能

字幕がない場合は google ドキュメントの音声入力機能を使うことができる(音声認識)。
音声入力機能はマイクからの音声入力を文字化する機能だが、PCのステレオミキサーの入力元リダイレクト機能によりマイク以外の入力から音声認識が可能になる。Windows/Mac なら全体の手順情報はすぐ見つかる。

Linux 環境

このお手軽作業を Linux 環境でもぜひやりたい。
HOWTO: [Google Drive, voice recognition, transcription] Transcribe Telegram/Whatsapp/Youtube (or any *cast) with Google Docs
この記事によれば音声入力の音源を手動で切り替えればいいのだが、実際には google ドキュメントからフォーカスが離れた途端に音声認識が停止してしまう。
音声認識が停止すると音源の選択肢自体が消えて手動切替ができなくなる。

マイクを通すと

別アプリの音声を入力元に割り当てなくてもマイクから音が拾えるではないか。
それでも音声認識はできるが、この場合スピーカーとマイクを通すことになる。
音声入力は音量と音質に敏感だからなるべく継ぎ目を無くし音声劣化を避けたい。

現時点の結論

音声入力元を切り替える手順を調べるのにずいぶんと骨が折れた。
Linux 環境で YouTube 音声を文字化する定番の手順は見つからなかった。
結局手動で入力元を切り替えられないから次のステップを踏みます:

仮想マイクを作る

●コマンドラインで
①デフォルトの出力装置を入力元とする仮想マイクを作る。
~$ pactl load-module module-remap-source source_name=sourceXmic master=alsa_output.pci-0000_00_1b.0.analog-stereo.monitor source_properties=device.description=virt-microphone
●google ドキュメント編集画面で
「ツール」メニューから音声入力を始め、マイクの選択で仮想マイクを選択する。
●pavucontrol(Volume Control) GUI 画面で
①仮想マイクを入力装置として使用可能。②音声入力中は入力元が仮想マイクになる。