カテゴリー: 技術系

  • Google ColabでWhisperを使った実験していたらファイル読み込みでエラー

    Google ColabでWhisperを使った実験していたらファイル読み込みでエラーが起きた。ffmpegで処理ができないというもの。

    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x55b571550000] moov atom not found
    upload/xxxxxxxxxx.mp4: Invalid data found when processing input

    どうやら、これはGoogle Colabのフォルダにファイルのアップロードが失敗していて、ffmpegで読み込んだときに壊れた認定されたようだ。

    途中で失敗していても、Google Colab上では、ファイルサイズが表示されているので、成功しているかと思っていた。アップロードのときに、アイドルタイムが長すぎて、Google Colabにセッションを切られて再接続したが、このときファイルのアップロード処理がうまくいっていなかった模様。

  • asp.netのコントロールのカラーをVBから変えようとしたらエラーに。

    コントロールのプロパティでは、カラー名や値で指定できるのに、VBで、そのまま書くとコンパイルエラーになる。VBやC#などのコードで、指定する場合は、「System.Drawing.Color」を使って、色を指定する必要がある。

    エラーになった記述

    xxxxxxxx.ForeColor = "#FF0000" 
    xxxxxxxx.ForeColor = "Red"

    正常にコンパイルもでき、動作する記述

    ' 色名で指定する場合 
    xxxxxxxx.ForeColor = System.Drawing.Color.FromName("Red") 
    xxxxxxxx.ForeColor = System.Drawing.Color.FromName("Black") 
    ' 数値で指定する場合 
    xxxxxxxx.ForeColor = System.Drawing.Color.FromArgb(0, 255, 0)

    参考 https://learn.microsoft.com/ja-jp/dotnet/api/system.drawing.color.fromargb?view=net-6.0

  • vCenter ServerのイベントでvmsyslogcollectorがRed判定される

    vCenter Serverのヘルスチェックのアラームで、「vmsyslogcollector」がRedとして判定されることがある。通知されるアラートとしては下記。

    [VMware vCenter Server - アラーム alarm.HealthStatusChangedAlarm] vmsyslogcollector のステータスが green から red に変更されました

    vCenter Server上に、vmsyslogcollectorがRedの状態(サービスが落ちっぱなし)で残り続けなければ、放置でよし。vCenter Serverでの健全性チェックとローテーションのタイミングが重なったことで、vmsyslogcollectorのこの検知が発生することがある。vmsyslogcollectorがログローテーションなどを行うサービスなので、ローテーションのタイミングであり得るわけだ。

  • UbuntuでVeeamのアップデートがPGPエラーになったので対処

    Ubuntu (Linux)で、apt update したところ、Veeamのバックアップエージェントの更新確認でエラーになった。エラーをみると、PGPキーの有効期限が切れているというエラーだった。VeeamのPGPキーを更新したので、そのメモ。

    apt updateで表示されたエラー

    W: Failed to fetch http://repository.veeam.com/backup/linux/agent/dpkg/debian/public/dists/stable/InRelease  The following signatures were invalid: EXPKEYSIG 3268CF038EEC045B Veeam Software Repository key <support@veeam.com>
    W: Some index files failed to download. They have been ignored, or old ones used instead.

    対応方法

    念のため、PGPキーのリストを表示して確認する。(やらなくても問題はない)

    sudo apt-key list

    Veeamの古いPGPキー(GPGキー)を削除するために、下記のコマンドを実行する。

    sudo apt-key del FBF8A590

    Veeamの新しいGPGキーをダウンロードするために、下記のコマンドを実行する。

    sudo wget http://repository.veeam.com/keys/veeam.gpg -O /etc/apt/trusted.gpg.d/veeam.gpg

    もう一度、apt Updateする。

    sudo apt update

    これでアップデートが成功すれば、完了。

    対応したときのログ

    zen@web:~$ sudo apt-key
    Usage: apt-key [--keyring file] [command] [arguments]
    
    Manage apt's list of trusted keys
    
      apt-key add <file>          - add the key contained in <file> ('-' for stdin)
      apt-key del <keyid>         - remove the key <keyid>
      apt-key export <keyid>      - output the key <keyid>
      apt-key exportall           - output all trusted keys
      apt-key update              - update keys using the keyring package
      apt-key net-update          - update keys using the network
      apt-key list                - list keys
      apt-key finger              - list fingerprints
      apt-key adv                 - pass advanced options to gpg (download key)
    
    If no specific keyring file is given the command applies to all keyring files.
    zen@web:~$ sudo apt-key list
    /etc/apt/trusted.gpg
    --------------------
    pub   rsa2048 2017-02-20 [SC]
          9DD9 479D 06BA A713 2280  3AC1 6633 2B78 417E 73EA
    uid           [ unknown] Hatena Co., Ltd. <admin@mackerel.io>
    
    ~~~~略~~~~~
    
    /etc/apt/trusted.gpg.d/veeam.gpg
    --------------------------------
    pub   rsa4096 2016-05-06 [SC]
          EFAF F6B4 4E68 80EA DDD2  17E4 7AFD EEB8 FBF8 A590
    uid           [ unknown] Veeam Software Repository key <support@veeam.com>
    sub   rsa4096 2016-05-06 [E]
    
    zen@web:~$
    zen@web:~$ sudo apt-key del FBF8A590
    
    OK
    zen@web:~$
    zen@web:~$ sudo wget http://repository.veeam.com/keys/veeam.gpg -O /etc/apt/trusted.gpg.d/veeam.gpg
    --2022-09-08 10:19:26--  http://repository.veeam.com/keys/veeam.gpg
    Resolving repository.veeam.com (repository.veeam.com)... 99.84.50.24, 99.84.50.103, 99.84.50.113, ...
    Connecting to repository.veeam.com (repository.veeam.com)|99.84.50.24|:80... connected.
    HTTP request sent, awaiting response... 200 OK
    Length: 4401 (4.3K) [application/octet-stream]
    Saving to: '/etc/apt/trusted.gpg.d/veeam.gpg'
    
    /etc/apt/trusted.gp 100%[===================>]   4.30K  --.-KB/s    in 0s
    
    2022-09-08 10:19:26 (503 MB/s) - '/etc/apt/trusted.gpg.d/veeam.gpg' saved [4401/4401]
    
    zen@web:~$ sudo apt update
    Hit:1 http://jp.archive.ubuntu.com/ubuntu bionic InRelease
    Hit:2 http://apt.mackerel.io/v2 mackerel InRelease
    Hit:3 http://jp.archive.ubuntu.com/ubuntu bionic-updates InRelease
    Hit:4 http://jp.archive.ubuntu.com/ubuntu bionic-backports InRelease
    Get:5 http://repository.veeam.com/backup/linux/agent/dpkg/debian/public stable InRelease [7,549 B]
    Get:6 http://repository.veeam.com/backup/linux/agent/dpkg/debian/public stable/veeam amd64 Packages [6,448 B]
    Hit:8 http://security.ubuntu.com/ubuntu bionic-security InRelease
    Hit:10 http://ppa.launchpad.net/brightbox/ruby-ng/ubuntu bionic InRelease
    Hit:7 https://downloads.mariadb.com/MariaDB/mariadb-10.3/repo/ubuntu bionic InRelease
    Hit:9 https://downloads.mariadb.com/MaxScale/2.4/ubuntu bionic InRelease
    Hit:11 https://downloads.mariadb.com/Tools/ubuntu bionic InRelease
    Fetched 14.0 kB in 2s (6,034 B/s)
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    3 packages can be upgraded. Run 'apt list --upgradable' to see them.
    N: Skipping acquire of configured file 'main/binary-i386/Packages' as repository 'http://downloads.mariadb.com/MariaDB/mariadb-10.3/repo/ubuntu bionic InRelease' doesn't support architecture 'i386'
    zen@web:~$

    参考

    https://helpcenter.veeam.com/docs/veeampn/userguide/veeampn_update_troubleshooting.html?ver=21

  • WhisperをWindowsにインストールして使ってみる

    Whisperは、OpenAIがMITライセンスで公開した汎用音声認識モデル。機械学習の訓練済みのモデルなので、そのまま使うことができる。

    https://openai.com/blog/whisper/
    https://github.com/openai/whisper

    これを試すために、ほぼまっさらなWindows11 Proの上に、インストールして、実際に使ってみた。そのときの手順は下記。

    Pythonをインストール

    Pythonの公式サイトから、Windows用のインストーラーをダウンロードしてインストールする。

    Windowsでインストールするときは、ユーザ環境ではなく、ALLユーザの環境を選択して、インストール先をCドライブの下にフォルダを作成して、そこにインストールするのがよい。ユーザ環境にインストールする場合、ユーザ名で日本語が使われていたりして、実行時にエラーになるので。

    PyTorchをインストール

    インストールするコマンドを下記のpytorchのサイトで確認して実行する。

    https://pytorch.org/get-started/locally/

    NVIDIAのGPUがない普通のPC(とりあえずSurface Pro7)なので、PytorchもCPU版を選択した(CUDAなしの環境)。インストールは、Python標準についてくるpip3で。そのときのコマンドは下記。

    pip3 install torch torchvision torchaudio

    もし、pip3が見つからない場合は、Windowsを再起動してみる。パスが認識されていない可能性があるため。

    FFMPEGをインストール

    いろいろと検討したが、Windows用のパッケージ管理ツールのchocolateyを使うのが楽だった。

    まずは、chocolateyをインストールする。Powershellを管理者権限で開いて下記を実行する。

    Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

    インストール後、パスが正常に読み込まれていないようだったので、Windowsを再起動した。

    Powershellを管理者権限で開いて、下記のコマンドを実行してffmpegをインストールする。

    choco install ffmpeg

    Rustをインストール

    Whisperのページによると、念のため、 rustもインストールしておくとのこと。

    pip install setuptools-rust

    Gitをインストール

    下記のサイトからWindows用のGitをダウンロードしてインストールする。

    https://gitforwindows.org/

    インストールしたら、Windowsを再起動する。

    Whisperのインストール

    Powershellを開いて、下記のコマンドを実行する

    pip install git+https://github.com/openai/whisper.git

    やっとインストールが完了。

    Whisperで動画ファイルの音声起こしをやってみる

    Powershellを起動して、下記の書式でWhisperを利用する。実際に動作するのは、Pythonのコードだが、使うだけならPythonを起動させなくてもいい。

    whisper ファイル名 --language Japanese --model small

    「–model xxx」のxxxには「tiny」「base」「small」「medium」「large」を選択して、指定する。モデルは、処理速度と精度のトレードオフになる。モデルがmedium、largeと大きくなるほど、処理負荷が増える。

    利用するモデルの初回実行時には、モデルのダウンロードが行われるため、処理が始まるまでに時間がかかる。

    実際に、1時間程度のMP4の動画の文字起こしを、モデルsmallでさせてみたところ、第10世代のCore i5での処理で、5時間かかって、30分弱しか処理できていない。認識の精度としては、漢字への変換も含めて、かなり読める精度だ。「xxx代」が「xxx台」になっているとか、コンテキストを読まないと変換できないものは、違っているけれど、おおむね文字起こしできている。

    NVIDIAのGPUを入れて、CUDAで、Pytorchの処理をさせないと、高速化はできないということもわかった。CPUだけだと、向き不向きの不向きな処理なので、実用に耐えられる速度はだせないのかもしれない。「base」や「tiny」も試してみないことには結論はだせないけれども。

  • Microsoft StoreからインストールしたGIMPが起動できなかった

    Windows11に、Microsoft StoreからGIMPをインストールしたが、起動しない。バージョンは、GIMP 2.10.32。

    GIMPの公式サイト(https://www.gimp.org)からダウンロードしたインストローラーでインストールしたら、Windows11で起動できた。Microsoft Store版だと、対応言語に日本語が入っていなかったのも原因なのかもしれない。

  • モリサワのUDフォントがChromebookで利用できるようになった。

    モリサワのUDフォントがChromebookで利用できるようになったという。

    https://forest.watch.impress.co.jp/docs/news/1440673.html

    早速、Chromebookで設定変更を試してみた。

    Chromebookの設定には、フォントの設定はなく、ブラウザのChromeの設定のデザインにあるフォントで設定を変えた。アドレスバーに直接入力するなら下記。

    chrome://settings/fonts

    標準フォントなどを選ぶところで、「BIZ UDPGothic」を選ぶ。

    最初は何も考えず、全部「BIZ UDPGothic」にしたけれど、Serifフォントだけ、あとから「BIZ UDPMincho」に変えた。

  • FreeBSD13.1にしたときにCertbotが消えていた

    FreeBSD13.1にアップグレードしたときに、pkgの更新も行ったためか、certbotがきえていた。Let’s Encryptの証明書が更新されているはずなのに、更新されず期限が切れたので、そこで気がついた。

    コマンドが消えて、エラーになった。(↓のコマンドが消えた)

    /usr/local/bin/certbot-3.8 renew

    pkgで探して、新しくインストール。

    pkg search certbot
    pkg install py39-certbot-1.27.0,1

    シンボリックリンクが作られていたので、そちらを利用して、証明書を更新した。そのあとに、Apacheを再起動。

    certbot renew
    httpd -k restart
  • Azureでメンテナンス告知を確認する方法

    1. Azureの管理コンソールにアクセスする。

    2. すべてのサービスから、「サービス正常性」を開く。

    3. サイドメニューから「計画メンテナンス」を選択する。通知がある場合には、サイドメニューの計画メンテナンスに、(1)のような件数表示がある。

    4. メンテナンスの告知が表示されるので、選択して、内容を確認する。

    5. 内容を保存する場合には、PDFで出力する。

    AppServiceでも、個別のところにはなく、サービス正常性のところに通知がある。そして、複数のインスタンスがあるとき、どれの通知なのかわからない。

    サービス停止を伴うものかどうかも、メンテナンスの内容を見てみないとわからない。(サービス停止を伴うもに出会っていないので、なんともいえないけれど)

  • GitLab 14.10 から 15.3.1 にアップデートした

    GitLabで、14.10から15.3.1にapt upgradeでアップデートしたときに、エラーになったので、対応メモを残す。

    発生したエラー

    zen@LABO:~$ sudo apt upgrade
    パッケージリストを読み込んでいます... 完了
    依存関係ツリーを作成しています
    状態情報を読み取っています... 完了
    アップグレードパッケージを検出しています... 完了
    以下のパッケージはアップグレードされます:
      gitlab-ce
    アップグレード: 1 個、新規インストール: 0 個、削除: 0 個、保留: 0 個。
    11 個のパッケージが完全にインストールまたは削除されていません。
    1,104 MB 中 0 B のアーカイブを取得する必要があります。
    この操作後に追加で 223 MB のディスク容量が消費されます。
    続行しますか? [Y/n] Y
    (データベースを読み込んでいます ... 現在 296393 個のファイルとディレクトリがインストールされています。)
    .../gitlab-ce_15.3.1-ce.0_amd64.deb を展開する準備をしています ...
    gitlab preinstall: It seems you are upgrading from major version 14 to major version 15.
    gitlab preinstall: It is required to upgrade to the latest 15.0.x version first before proceeding.
    gitlab preinstall: Please follow the upgrade documentation at https://docs.gitlab.com/ee/update/index.html#upgrade-paths
    dpkg: アーカイブ /var/cache/apt/archives/gitlab-ce_15.3.1-ce.0_amd64.deb の処理 中にエラーが発生しました (--unpack):
     new gitlab-ce package pre-installation script subprocess returned error exit status 1
    処理中にエラーが発生しました:
     /var/cache/apt/archives/gitlab-ce_15.3.1-ce.0_amd64.deb
    E: Sub-process /usr/bin/dpkg returned an error code (1)
    zen@LABO:~$

    最初に、14.10から、15.0.2-ce.0に、アップデート。リストにあるかどうかを確認してから、バージョン指定でインストール。これで上書きインストールされる。

    zen@LABO:~$ sudo apt-cache madison gitlab-ce
    zen@LABO:~$ sudo apt-get install gitlab-ce=15.0.2-ce.0

    この後に、15.3(最新)にアップデート。今度は成功した。

    zen@LABO:~$ sudo apt update
    zen@LABO:~$ sudo apt upgrade