ffmpegでスクリーンキャプチャーの.movをアニメーションGIF(.gif)に変換する

以下のフォーマットでコマンド入力しffmpegを実行します。

ffmpeg -i 変換元.mov -r フレームレート -vf scale=横幅ピクセル数:-1 変換先.gif

具体的には以下のようなコマンドとなります。

ffmpeg -i /Users/username/Desktop/cap.mov -r 12 -vf scale=720:-1 /Users/username/Desktop/cap.gif

Chrome CastでMacのデスクトップを表示する方法

Chromeの右側にあるメニューからCastを選択します。

Chromeのタブのみか、デスクトップ、ファイルを表示するかを選択できます。

デスクトップを表示する際は、PrivacyでChromeに画面録画を許可が必要なようです。

eGPUを使ってもiOSシミュレータ上でgl-react-nativeの描画は速くならなかった

Razer Core X ChromaRadeon RX 5700 XTを搭載してeGPUとしてみましたが、iOS Simulatorでgl-react-nativeを使ったアプリを動かしてもGLSLの描画部の表示速度は体感的に変わらなかったことをメモしておきます。

おそらく大半の処理はCPUでシミュレートされているのだろうと推測しています。

openFrameworksで制作したアプリをビルドしてMacで実行したところ、eGPUを使用するオプションを選択することでFPSレートが通常時よりもよくなったことも併せてメモしておきます。

openFrameworksのアプリは当然ながらMac用のネイティブアプリとしてビルドされるので、GPUで処理されるべき処理はGPUが担当するように設定可能で、実際にその通りに動作するようです。

React Nativeで立ち上がるiOS シミュレーターのOSバージョンを明示的に指定する方法

React Nativeでyarn iosを実行した際に立ち上がるOSのバージョンを指定する方法です。

package.jsonのscriptsにある”ios”の項目に–simulatorオプションをつけ希望のiOSデバイスとOSバージョンを追加します。

"ios": "react-native run-ios --simulator=\"iPhone 11 (14.0)\"",

Xcodeのシミュレータ選択欄と同じように記述します

64bit 環境のMacOSでofxFftを使う方法

ofxFftを使うためにはプリコンパイルしたfftw3f.aが必要ですが、ダウンロードするように指示されているファイルは32bit環境用でビルドエラーが出ます。

https://github.com/kylemcdonald/ofxFft/issues/14

こちらに解決方法が紹介されていました。

http://www.fftw.org から最新のfftwをダウンロードして、展開したフォルダ内で以下のコマンドを実行します。

sudo ./configure --disable-shared --enable-static --enable-float --enable-threads CC="gcc -arch x86_64" CXX="g++ -arch x86_64" CPP="gcc -E" CXXCPP="g++ -E"
sudo make install

/usr/local/lib に以下のファイルが生成されているのでofxFftのlibs/fftw/libの中にコピーします。

また /usr/local/include のfftw3.hファイルを ofxFft/libs/fftw/includeにコピーします。

ビルド時に以下のようなエラーが出た場合は

ld: library not found for -lfftw

.zshrcに

export LIBRARY_PATH=/usr/local/lib/

を追加して

source ~/.zshrc

を実行します。

また、Project Generatorを使ってofxFftを読み込んでいる場合は.aファイルが追加されていないので手動でXcodeで追加します。

XcodeでArchiveできない時の対策

XcodeでiOSアプリをリリースする際に事前にArchiveする必要がありますが、メニューから選択できない状態になっていることがあります。

その際はビルドのターゲットデバイスをiOS Generic DeviceにすることでArchiveできるようになります。

Xcode 12からはAny iOS Device (armv7, arm64)となっています。

Macの外付けハードディスクが取り出せない場合の対策

Macの外付けハードディスクをアンマウントしても1つ以上のアプリケーションが使用中というエラーが出て取り出せないことがあるので、外す方法を調べてみました。
続きを読む

Mac OS Xの写真アプリ(Photos)でiPhone内の写真が全く表示されない場合の対策

Macの写真アプリでiPhoneの写真をインポートしようとした際にiPhone内の写真が全く表示されないことがありました。
以下のような状態です。
Photos
またはNo Photosと表示される場合もあります。
No Photos

続きを読む

KORGのBluetooth MIDI Connectは他社製品でも使える

AKAIのLPD8 WIRELESSというパッドを使っているのですが、問題なくKORGのBluetooth MIDI Connectで認識します。

日本語マニュアルにLPD 8をBluetooth接続するにはSELECTボタンを押しながらPAD8を押すと書いてあるのですが、実際のペアリングボタンはPAD4です。ハードウェアにもそう印字してあります。

接続に成功すると以下の通りBlutooth MIDI Connectのデバイスリストに表示されます。
Bluetooth MIDI Connect

ExcelのVBAでファイルオープン時に処理を実行する方法

参考例としてSheet1に設定した関数を実行してみます。

Macの場合マクロの編集画面は ツール > マクロ > Visual Basic Editor から表示できます。

Sheet1に以下のようなプロシージャ(関数)を定義します。
他のスクリプトから読み込めるようにPublicにしておきます。

Public Sub Test()
    MsgBox "Test Box"
End Sub

実行すると以下のようなメッセージボックスが表示されます。

ThisWorkbookに以下のようにWorkbook_Open()の中でCallを使ってシート.プロシージャ(関数)名で記述すると呼び出せます。

Private Sub Workbook_Open()
    Call Sheet1.Test
End Sub

起動時に自動実行されますが、セキュリティ設定によっては以下の警告が表示されます。
マクロ実行の警告