OpenSourceなFPGAのPlace And RouteのXilinx版がつぎのところにあるんだけど、UltraScale+も対応してたのね。
てっきり、7-Seriesまでかと思ってた。
https://github.com/gatecat/nextpnr-xilinx.git
ZCU104のサンプルもあるし、今度、じっくりと使ってみよう。
Whisperで文字起こしをして、ffmepgで音声を切り出す。
Whisperを実行するとつぎのように結果を表示してくれる。
[06:16.740 --> 06:18.620] おはようございます
[06:51.680 --> 06:52.680] こんにちは
[06:55.400 --> 06:56.400] おやすみなさい
切り出した時間からffmpegでつぎのように実行すると、文字起こしした部分だけ音声を抜き出すことができる。
$ ffmpeg -i 入力ファイル名 -ss 開始時刻 -to 終了時刻 -c copy 出力ファイル名
Whisperで文字起こしをやってみた。
つぎのように環境を整える。
$ mkdir whisper
$ pyenv local 3.11.9
$ uv venv
$ uv pip install git+https://github.com/openai/whisper.git
$ mkdir convent
$ mkdir download
contentディレクトリにsample.mp3をコピーする。
つぎのような、スクリプト(sample.py)を作成する。
import whisper
fileName = "sample.mp3"
lang = "ja"
model = whisper.load_model("large")
# Load audio
audio = whisper.load_audio(f"content/{fileName}")
result = model.transcribe(audio, verbose=True, language=lang)
# Write into a text file
with open(f"download/{fileName}.txt", "w") as f:
f.write(result["text"])
音声起こしを実行する。
$ source .venv/bin/activate
$ python sample.py
文字起こしが完了するとsample.mp3.txtに出力される。
今日は節分ですね。
すごく寒いので家にこもって、音声合成で遊んでいます。
もともとはクローズドな議事録起こしツールを作りたいだけだったんだけど、方向は逆だけどテキストから音声を合成できるのであれば、つぎのフローも試したくなってくる。
これを自分の好みの声や好みの性格を持ったLMMとかを学習させてしまえば、すごく好みなキャラクターができたりして…
議事録も登場するキーワードまでを要約できるようにすることもできそうな感じだなぁ…
ふだん、エディタはVSCodeを使っているんだけど、最近のコードのフォーマッターはPrettierとVerilog-HDL/SystemVerilog/Bluespec SystemVerilogを使っています。
フォーマットの規則はデフォルトのままです。
若い頃はフォーマットを一定のこだわりがあったけど、今はまったくないのでデフォルトでフォーマッティングされてしまっても気にならない。
つぎの言語のFormattingを行っている。
つぎの言語のFormattingを行っている。
この中でフォーマット自体はつぎのルールを使っている。