🗐 電装工芸日記 - 舞台照明機器の製作とか -

能登半島地震で被災された方々にお見舞い申し上げます。

or 管理画面へ

どのカテゴリにも属していない投稿[869件](17ページ目)

Icon of admin
 「Open DMX USB」について考えていたのは移動中アタマが空いていたからです。
 学園祭への機材レンタルで搬送をしていたのですが、片道1時間半くらいかかるので考え事をするには丁度良い時間でした。

 そんな中で Art-Net Patch も思い出す。余りに難しく、数日アタマを全振りしないと進められないネタのために止まっています。
 ミキサー(マージ)、プリディレイ(入力に施す)、プリプロファイルカーブ、パッチ、ポストプロファイルカーブ、ポストディレイ(出力に施す)が主な機能ですが、これらの処理(エフェクターと呼称)は参照して計算、参照して計算、参照して計算をひたすら繰り返します。一つ一つはとても簡単な処理ですが、タイミング良く群のデータを短時間で処理しないといけないので構成が難しく、僅かな無駄が後からボディブローの様に効いてきます。

 年齢が年齢なので経験量に対し学習量が少ないなぁ~と思いつつも、オブジェクト指向やマルチスレッドなどが普通に使える様になってきますと今までと違った構成がアタマに浮かんできます。全体を一度に見ると難しい処理ですが、構成を分解・整理すれば分割したライブラリとして進められるんじゃないかと。
 厄介なのはミキサーとディレイですが、これらを実現するには最大遅延時間分の過去を送信元分保存しておく必要があります。このデータ構成を良く考え、エフェクターの出入りを一般化して進めれば機能単位での製作が可能になりそうな気がします。

 目的に対しその環境や言語をどう使えばいいか具体的な見込みを付けてからデータ構造と処理アルゴリズムの本構成を考えることが大切だと思う今日この頃。
 開発のプロからしたら当たり前過ぎることなんでしょうけど。

#[Art-Net] #C言語 #器具の製作
Icon of admin
 なんとなーくネットを眺めていたところ「Open DMX USB」に目が止まる。
「Open USB USB」
 PCから DMX512 を出力する USB インターフェースです。仕様がオープンになっていてハードウェアは極めてシンプルです。FT232RL を用います。
 ライセンス仕様は GPLv2 です。大雑把に言うなら、改変しない限り商用/私用を問わず自由に使えます。
 FT232RL は LTC Generator でも使っているので、その延長線で使えるなら悪くないなぁ~と。

 このところ JASCII のオフライン打ち込みソフトのリクエストがあります。もちろん、ASCII や Comos-Text との変換を含めてです。
 正直言うと面倒臭い。有料にするとライセンスの管理やサポートが面倒だし、無料にすると空振り感が強い。プロでない私がコレを開発するには本業を1/3にして半年かかります。卓を持ち込めば済むことに掛ける手間ではありません。
 ですが、JASCII 関係は解決したいなぁ~って気持ちはあります。最近は、劇場間でデータを使いまわすためではなく、事前の空打ちが目的になっているからです。有志がお作りになったオフラインソフトもありますが、操作感に照明を作るリズム感がありません。テンキー操作でバンバン打ち込めるシステムがあってもいいのかなとは思います。
 もし作るなら、JASCIIベースでプレイバックも出来る様にしてPC卓にしてもいいのかなと。DoctorMX や Open DMX USB で DMX512 を出せばいいのです。

 イロイロ想うことはあるので、システムの構成だけでも考えていいのかなと。

#ガチ工作 #照明器具
Icon of admin
 LtcPlayer 0.2.2βです。
 細かいバグを修正しました。
「VLC media player」のインストールを推奨します。入れなくても動きますが、入れた方がいいみたい。

#タイムコード
Icon of admin
 ボーダーケーブルを修理しています。
 シースを剥いてバラになった芯線をカバーするチューブが酷い状態になっています。チューブが縮んだのか芯線がシースから出てしまったのか七分丈になっています。これにビニテを巻いて誤魔化していたのですから困りものです。これは機能を失っている故障ですから要修理品だと思って欲しいなぁ~。
 取り急ぎなのでホームセンターを徘徊しましたがよさそうなビニールチューブがありました。
「三洋化成 特殊耐寒チューブ T-12」
 カタログスペックを読む限り環境耐性は良いと思われます。溶けるギリギリまで加熱しましたが寸法の変化は見受けられません。ビニル製品は熱、紫外線、水気を受けると形状がゆっくり変化していきますので数年経過を見ないとわかりませんが、安価なビニールチューブより期待出来そうです。
 ビニールチューブの固定方法ですが、被覆付き針金を巻き付けて本体ケーブルのシースと繋げてみました。電気工事のバインド線処理やカムロックコネクタの組み立て方法などをヒントにしています。ビニテやロックタイで巻くだけより長持ちしそうな気がします。
 一番の問題は作業時間です。バラして組み直すのに1本あたり2時間強かかります。安全のためにやらねばなりませんがかかりますねぇ。

#照明器具
Icon of admin
 VLC が入っていて Python を入れていないパソコンが一台あったので exeファイルを試してみました。
 問題なく動きます。
 python-vlc は VLC を入れていなくても動くハズですが、入れておいた方がいいのかもしれません。

 VLC をアンインストールして試す手もありますが、DLL などが残る可能性もあるので、一度 VLC に触れたパソコンはインストール済みと思うしかありません。
 いずれにしても、VLC のインストールを推奨することにしましょう。
「VLC media player」
 とても便利なアプリです。特にこだわりがなければ、デフォルトアプリとしてもお勧めする一品です。

#Python #タイムコード
Icon of admin
 pyinstaller でexeファイルを作ってみましたが環境によって微妙な不具合が出ます。原因は不明ですが、pyinstaller の操作手順かもしれません。
「PyinstallerでPythonプログラムをexe化する手順書(Windows編)」
 上記を参考に作った exeファイルは自分の環境では問題なく動いたのですが、ここに一工夫加えてみようと思います。
 仮想環境での実行が推奨されていますが、pyinstaller 自体も仮想環境にインストールするべきなのかもしれません。別の先達情報にはその様に書かれている物があります。
「PyInstallerを使ってみた」

追記
 作業手順のオレメモ。
 仮想環境に pyinstaller を入れての実行の方が良いようです。
作業ディレクトリに移動
> cd <作業ディレクトリ>
pipenv をインストール
> pip install pipenv
pipenv で使う python のバージョンを指定
> pipenv --python 3.9
pipenv(仮想環境)を開始
> pipenv shell
仮想環境にpyinstaller をインストール
> pipenv install -d pyinstaller
必要なライブラリをインストール
> pipenv install pyserial
> pipenv install PySimpleGUI
> pipenv install python-vlc
・・・etc
ビルドする
> pyinstaller ltcplayer.py --clean --noconcole --onefile
・・・数分で終わる。
作業ディレクトリ内の distフォルダ内 に ltcplayer.exe が出来ている。

終了なら仮想環境のshellから抜ける
> exit
仮想環境を削除
> pipenv --rm

作業ディレクトリは Python のソースコードがある階層でもいいのだけれど、
ゴチャゴチャするので私は一つ下の階層で作業をしています。
ソースコードがある階層で
> mkdir env
> cd env
> pyinstaller ..\ltcplayer.py --clean --noconcole --onefile
相対パスでソースコードを一つ上の階層として呼びます。
お好みですけど。


#Python #タイムコード
Icon of admin
 今「人工石油」が注目されています。
 簡単に安く短時間で灯油や軽油とほぼ同質の油を作る技術です。

 この映像の3'40"くらいから細かい説明がありますが、これは面白い製造方法です。
 結合が強い二酸化炭素を分解するって発想がまず凄い。

#雑談
Icon of admin
 実行ファイル化した LTC Player 0.2.0β の処理負荷は5~7%です。十分に軽いと言えます。
 しばらくは本業を頑張らないといけませんが、その本業で使って細かいバグを見つけていきましょう。

#タイムコード #Python
Icon of admin
 Python でファイル保存するには次の方法がお手軽みたい。
「pythonでlistをファイルに保存し、読み込む方法(numpyも同様!)」
 上記内の「pickleを使用する方法(おすすめ!)」です。
 ここでは list を保存する方法として書かれていますが tuple でもOK。もちろん、list や dict を含む異なる型をテキトウに突っ込んだ tuple でもOK。Python で一つの変数として扱える状態にしてから pickle.dump でファイルに入れれば何でもいいみたい。読出しは load すれば pickle.dump する直前の状態で変数に格納されます。変数のまんま保存し変数のまんま読み出せるイメージです。
 やりたいことは list 型のセットリストと諸々のステータスの保存/読出しです。これらを tuple にまとめれば一括で扱えるみたいです。
 ファイル保存は手続きが面倒ってイメージがありましたが、これは楽チンです。

 追加オレメモ。
「Pythonでファイル、ディレクトリ(フォルダ)の存在確認」
「Pythonでディレクトリ(フォルダ)を作成するmkdir, makedirs」
「Python ファイルのコピーと移動」
 こういった基本的なことが凄く簡単なのは Python のすばらしさ。
 この様な操作を整理しているのは、データを他のパソコンに持って行く前提で、音源ファイルをセットリストファイルと同じフォルダに置きたいからです。

 pyinstaller を使って実行ファイル化(.exe化)してみました。この状態にすると Python をインストールしていないパソコンでも動きます。操作は簡単ですし中身を隠せていいかも。
 モノは試しにアップしてみました。Windows11の64bitでしか試していませんが、64bitならWindows10でも動くと思われます。
 LtcPlayer
 セットリストの保存機能が未実装のβ版です。モノ好き大好き自己責任でお楽しみください。
 LTC の出力には専用インターフェースが必要です。これが無ければ単なる音楽プレーヤーです。
 専用インターフェースのことを LTC Generator と呼んでいますが販売するかは検討中です。ノンクレーム返品可で少数販売でしょうか?手作りなので数を作れませんしサポートしきれませんし。

#タイムコード #Python
Icon of admin
 LTC Player は「オイラ、最初からこうだよ」と言わんばかりの顔で動いています。嬉しいようなちょっとムカつくような。

#タイムコード #Python

■当面の課題

花粉症シーズンも一段落したようで重傷者にも笑顔が戻ってきました。私は原始人なので花粉が酷い日でも鼻の中が埃っぽいなぁくらいにしか感じませんけど。
気温の変化が激しいようですので、みなさま健康管理には注意してください。

編集

■全文検索:

複合検索窓に切り替える

■複合検索:

  • 投稿者名:
  • 投稿年月:
  • #タグ:
  • カテゴリ:
  • 出力順序:

■日付検索:

■カレンダー:

2023年9月
12
3456789
10111213141516
17181920212223
24252627282930

■カテゴリ:

■最近の投稿:

最終更新日時:
2024年5月10日(金) 06時55分20秒