筆者にとってやりやすい文字起こしの過程は以下の3段階に分けられます:
- 発話時間がなるべく10秒以内になるように、対象の音声を小分けする
- 小分け音声を音声認識エンジンにかけ、1クリップ1行の形式で出力をテキストファイルに保存する
- 小分けされた音声または動画を繰り返し再生しつつ、該当箇所のテキストの修正をする
Pythonスクリプト、Audacity、Julius または DeepSpeechで1と2はだいたい望み通りに動いています。
今、3の部分を Python GTK+ を使ってプログラムを書いているところです。今回はテスト用ミニスクリプトで骨組みを作ります。
クラス MyWindow にボックスを一つ持たせ、それに DrawingArea をパックします。(変数名は drwArea)
# temp.py
# テスト用ミニスクリプト
import gi
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk
class MyWindow(Gtk.Window):
def __init__(self):
Gtk.Window.__init__(self, title="テスト用ミニスクリプト")
self.connect("destroy", Gtk.main_quit)
self.drwArea = Gtk.DrawingArea()
self.drwArea.connect("realize", self._realized)
self.box = Gtk.Box()
self.add(self.box)
self.box.pack_start(self.drwArea, True, True, 0)
def _realized(self, widget, data=None):
print("JPEG画像を表示するには?")
def show(self):
self.show_all()
window = MyWindow()
window.show()
Gtk.main()