忍者ブログ
カレンダー
03 2024/04 05
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
プロフィール
HN:
[-_-;] (みかん)
性別:
男性
趣味:
プログラミング、XOPS
自己紹介:
中部地方在住です。
最新コメント
[11/30 NONAME]
[11/22 NONAME]
[09/24 NONAME]
[06/10 NONAME]
[01/29 NONAME]
XOPS関連サイト「みかん箱」の運営や、OpenXOPSの開発などを行う[-_-;](みかん)のブログ。近状報告や独り言などを書きます。
Prev Month123456789101112131415161718192021222324252627282930Next Month
[PR]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

category :
PR
某装置を制御する仕掛けを作る
XopsAddonCreatorを触るつもりでいましたが、完全に別件で とある所で
使うため、某装置を制御する仕掛け(ソリューション)を作っていました。


「某装置を制御するソリューションって何ぞや?」って話ですが、PCを用い
て、ディスプレイの入力信号を受け取り、出力装置を制御する系(?)です。
もう少し詳しく書くと、HDMIの映像信号をUSB接続のHDMIキャプチャーで
受け取り、制御PCで映像を判定した上で、Arduinoを使って仮想キーボード
として出力するお話です。まだ実験段階です。
別に無理に隠すことはないものの、いつ誰が見るか分からないので、
一応これ以上の詳細は伏せておこうと思います。
ハードウェアとソフトウェアが絶妙に混ざっているため、このブログ記事の
カテゴリもどうするか悩みました(^^;

こういうハードウェアとソフトウェアが融合した仕掛け作りは、昔から自分の
得意分野だったりします。
発想・原理としては結構単純なのですが、今まで形にしたことがないタイプ
で、所々に罠・癖があったりと結構大変でした。
過去形で語れる話ではなく、現在進行形なのですがw

HDMIの映像入力については、ネット通販で目についた適当に安い中華製HDMI
キャプチャーを買いました。
どれがいいとか どこに注意するべきかなど未知なので、半ば適当に選んで買って
います。
言うほど超高画質ではなく ちょっと色がおかしい気がしますが、まぁ実験・検証
に使う分にはコスパは良い商品でした。
ただ、メインPCでは接続中は正しく動き続けるのですが、サブのノートPC
だと、数分で自動的に映像が切断され動かなくなります。
PCのハードの問題なのか、OSのどっかに省電力設定のようなものが紛れている
のか、ドライバーの問題なのか、特定の常駐アプリの有無みたいな話なのか、
よく分かりません。この辺は要調査ですね。

HDMIをキャプチャーした映像の画像処理は、自前で実装しました。
ガチでやるならOpenCLとか使った方が良いのですが、入力されてくる映像は
かなりパターン(法則性)があり、そんな本格的な画像処理エンジンを使わな
くても何とかなるレベルだったからです。
この手のソリューションは映像処理の(あらゆる意味での)優秀さに掛かって
いますね。
今回の用途としては、まぁまぁの出来になったかな っと満足しています。
自己評価で点数を付けるなら60~70点ぐらい。

仮想出力(対象装置から見たら入力)は、今回キーボードだったのでArduinoを
使いました。
最初はPSoC3を使おうとしたのですが、参考文献が少なく ちょっと調べても
使い方がよく分からなかったので辞めました(汗
PSoC3をネチネチやりたかった気持ちもなくは無いですが、今回は成果物と
しての完成を優先し、PSoC採用は諦めました。
Arduinoにした理由は、10年ぐらい前(もうそんな前!?)に触ったことが
あったことと、大きさや完成度の要求が特段高くない点、後は情報量の多さ
から短期間で作品自体の完成・テストへ到達できると考えたからです。
10年前に手に入れたモデルだと使いたい機能が使えなかったので、モデルは
買い替えたのですが。
Arduinoって、非常に簡単ですぐにプロトタイピングできるので、成果物を
急ぐときには重宝しますね。これは良かった。
・・・なんかゲームエンジン使う話と似ているなぁ...(遠い目


HDMIのキャプチャーデバイスで映像が映らなくなる問題もそうですが、
実は解決の糸口が見つかっていない点が もうひつあります。
それはソフトウェアのGUIです。
PC上で動作させるソフトウェアのGUIが、まともにできていません。

そりゃC言語でWinAPIを使えば、良いGUIのソフトが作れるのは分かって
いますが、手間ばっかり掛かり過ぎるので使いたくありません。
最初HTA(HTML Application)を使いましたが、外部のexe・batの実行処理
がイマイチで、途中で使うのを諦めました。
HTAって、気軽にGUIが作れ環境依存も少ないので非常に理想に近いの
ですが、なんでこう外部exe・batの実行機能が弱いんだろ・・・って
いつも思います。
実行時にコンソールのウインドウが一瞬出てくるとか、親プロセスが
終了しても実行したプロセスは残るとか、標準出力が一発で拾えないとか、
かゆい所に手が届かない感じです。。残念。
ネットを調べると、あの手この手で回避する手法を発明してる人が多々
いますが、なんで標準機能でサクっとできないのだろうか。

あと残りの手札は・・・HSPか。。 HSP...うーむ。。


そんなこんなで休日が過ぎ去りました。
もう11月下旬ですね。あと一ヶ月ちょっとで1年間が終わるようで。
今年も早かったなぁ。
category : ソフト・ツール開発 comment [1]
COMMENTS
【本文以外は任意項目です】
SUBJECT(タイトル)
NAME(お名前)
MAIL(メールアドレス)
HOME(サイトURL)
COMMENT(本文)
PASS(削除パスワード)
Secret?(管理者へのみ表示)

※スパム防止のため「Hello!」「website」「ブランド」「みかんの戦闘ブログ」
「http」などの一部キーワードを禁止しています。ご了承ください。

無題 2021.11.22 Mon 20:50 EDIT
>ただ、メインPCでは接続中は正しく動き続けるのですが、サブのノートPC
>だと、数分で自動的に映像が切断され動かなくなります。
USBセレクティブサスペンドが怪しいのではないかな。
from NONAME
コメントありがとうございます。

私も「USBセレクティブサスペンド」を疑いましたが、そこではない(そこだけではない?)ようです。
以下、確認したOS設定です。
・USBセレクティブサスペンド 無効
 >効果なし
・Intel CPPC Energy Efficiency Settings 無効
 >効果なし
・このデバイスの電源をオフにできるようにする 無効
 >効果なし
・オーディオインターフェース バッテリ使用時に実行し続ける(既に有効)
 >効果なし
・OSをセーフモードで起動
 >効果あり
・カメラアプリ使用し続ける or オーディオで「このデバイスを聞く」有効化
 >効果あり

USBワットチェッカーを使ってみると、問題が生じても電圧は出続けているので、デバイスがサスペンド・スリープ状態になっているようです。
また、OSから常にアクセスし続ければ、問題は生じないことも分かりました。

とりあえずは、そもそも該当PCを使用しないことに加えて、やむ負えず使用する際には「このデバイスを聞く」を有効化するなどで、
ひとまず運用回避するしかなさそうです。
謎現象で結構気になる問題なのですが。
from MASTER 2021.11.23 Tue 22:55

※過去のブログ記事は 原則として編集・修正していません。
 各記事の内容は投稿時のものであり、現在では異なる場合があります。
 最新の情報は、関係する内容について書かれた 最新の記事をご覧ください。

TOP