Brynhildr

KeroRemote

リモートデスクトップエンジニアのブログ。

Brynhildr 1.0.1.2 Release
1.0.1.1 → 1.0.1.2

◆音声転送不具合修正

サーバー側のスピーカー設定が3チャンネル以上の場合、音声転送の際に片方の音しか転送されない不具合を修正しました。

リサンプリングの方法が間違っていた為に不具合が発生しておりました。申し訳御座いません。ちょっと勉強不足で御座いました。が、まだ完全には分かっていないよーな気もするのでまだおかしい箇所がある場合は御連絡を頂けますと幸いで御座います。

◆他微調整

無音時の処理を調整しました。

ダウンロード



今回は少な目の修正内容で御座います。リリースして結構経つのにまだ不具合が取れないとかホントすみません。これはやはりテスト工程の弱さにあるのですよね。しっかりテストが出来ていない的な。自分の利用環境は主にイヤフォンでして、スピーカー設定はステレオしか指定していないのですが、5.1chで正常に動作する事を確認したはずなんですがダメでしたね・・・。音のチェックを片方のイヤフォンでチェックしていて、それがたまたま音の出る方だったなんて恥ずかしくて言えない・・・。

そんなこんなで今年は何とかせねばならんと思ってますので、今年はアシスタントを雇用する事を目的にしたいと思います。ただ、雇用するには先立つものが・・・。まず御仕事を頑張ります・・・。その為には精度の高いアプリを開発せねば・・・。あれ無限ループが・・・。

あと、前回のバージョンアップからEXEとDLLのバージョンが異なっておりますが更新忘れではありません。変更が無いDLLはバージョンアップしなくていーじゃんとゆー立派な手抜きで御座います。ですので今後のバージョンアップはEXEのバージョンアップと御考え下さい。たぶんDLLはあんまり変更とかバグとか無いんじゃないかなとは思ってはいますけどEXEのバージョンアップの際にひっそりDLLもバージョンアップするよーなそんな流れです。

今年もこんな調子で頑張りたいと思います!あとアシスタントはメガネ女子が良いです!




38件のコメント ... ( 管理人承認制 )



IchiGekiさん


すいすいです。
いつもBrynhildrを利用させて頂いています。


一つ質問があるのですが、今回の記事で書いてあるDllの更新が今後少ないということは
今後、異なるバージョンでも通信できる幅が広がるということになるでしょうか?


プロトコルが変更されている為だとはお思いますが、Ver1.0.0.1からVer1.0.1.2へは接続できなかったので。


あと、なんとなくですが古いVerの方がWin7においてのdwmの利用率増大やLANのFPS速度が安定して出ているように感じ取れます。


会社だと安定して速度の出るVer0.9.0.8を利用しています。
Ver1.0.0.1を前に会社で利用した時はFPSが何故か全然出ず、安定しない部分があったので古いのに落としました。


とりあえず、仕事の合間をぬって最新バージョンにあげようかとは考えています。


以上、質問&報告でした。
今後も素晴らしいソフトの開発、頑張って下さい。


すいすい  2014/01/07


> 異なるバージョンでも通信できる幅が広がる


いえ、DLLは映像圧縮のみしか行っておりませんので、通信とかに影響がありません。ですのでDLLはこれまでもほとんど変更する事がありませんでした。


接続できなくなる際には、通信の仕様が変わる為で仰る通りプロトコルの仕組みが異なっている為です。


あと、理論上は最新バージョンの方が速度は速いはずで御座います。「0.9.0.8」の時は「1.0.1.2」で言う「GBMJ」「MJPEG」が存在せず、「GBVC」のみとなっております。「1.0.1.2」は標準で「GBMJ」となっておりますので、もし「Video Codec」が「GBMJ」を選択されている場合は「GBVC」を御試し頂ければと思います。単純にFPSだけで言いますと「GVBC」の方がFPSが高いと思います。宜しく御願い致します。


IchiGeki  2014/01/07


開発要望です
11インチノートPC+WinXP で、文字を読みづらい時に「QZoom」というデスクトップ拡大アプリを使ってきました。
ところが「QZoom」は更新が止まっていて、Win7/8 対応は見込めまえん。
Windows7以降に標準搭載されている「拡大鏡」はマウススクロールで拡大率を微調整できません。
「QZoom」を使い慣れてきた私には「拡大鏡」は使いづらいです。
「拡大鏡」に使われる技術はリモートデスクトップと共通するのではないかと思っています。
そこで、IchiGeki さんが「QZoom」後継アプリを作ってもらえると嬉しいのですが。。。


QZoom「快速ズームソフト」
http://www.vector.co.jp/soft/winnt/util/se472661.html
画面全体を拡大ズームして操作「QZoom」
http://www.forest.impress.co.jp/article/2009/02/26/okiniiri.html


開発要望  2014/01/09


> QZoom


何やら面白そうなソフトですね。しかしながらそこのソフト、画面をズームさせている仕組みがちょっとわからないのですが・・・w
興味はちょっとありますので、もし開発が出来そうであれば検討するかもしれません。なかなかOSの基本機能とかと操作系がかぶりそうですので、奥が深そうな気はしています。とりあえず仕組みがわからない事には・・・というところでは御座います。気長に御待ち頂ければと思います。宜しく御願い致します。


IchiGeki  2014/01/10


#それは欲しいかも(^_^;。
テンキーの’+'を押すとカーソル周辺を無段階でズーム、離すと戻る。’-'を押すとカーソル周辺を無段階でズームアウト、離すと戻る。単に’+'とか’-'だとテンキー機能が使えませんね、Ctrl+’+'とCtrl+’-'はどうでしょう。
#すいません、いうのは簡単ですね。本当に虫眼鏡っぽくするのは面倒なので、そのままズームするなら、View変換(?)だけでいけそうですけど。Windows素人なので具体的なAPIは指摘できません、すいません。


ふんふん  2014/01/10


すいません、ちょっと質問です。


開発ってどのようになさってるんですか?


素人考えだとVMwareとかVirtualBoxといった仮想マシンを
起動しておいて、デバッグとかやるのかなと思ったんですが。


ふんふん  2014/01/10


> 開発ってどのようになさってるんですか?


開発ってリモートデスクトップの開発ですかね?


リモートデスクトップは普通にパソコンを2台利用したり、Hyper-Vを利用したりしてますね。


IchiGeki  2014/01/11


# すいません、Brynhildrしか頭になかったので、主語なしに
# なってしまいました。


Hyper-Vですね。Windows8でclientが使えると喜び早速試した
のですが、結局VMware Workstationに落ち着きました。8.1になって少し改善があったようですが、今までの資産があるので、
結局VMwareのままですね。


もし、Linux(Unix)で作るなら、どういう環境が必要なんだろうと
ふと思って質問してみました。Linux上の仮想マシンでいくつか
のWindowsを動かし、ホストマシン(Linux)でデバッグかなと
思います。Vmware Linux版が使えるので簡単でいいかも。
XenでもKVMでもいいんですけどね。


サポートするだけのOSがテストで必要ですが、今仮想マシン用に持っているライセンスはXP Home/Professionalだけです。
実機としては、7, 8, 8.1がありますが、Vistaはありません。
Vistaは見たことしかないので、テストできません。


MSDNライセンスを持っている方は入手できるのでしょうね。
しかし、高いですよねぇ…個人で買うには。


ふんふん  2014/01/11


もう1つ教えてください。


Encryption機能の実装としては、どのようなアルゴリズムを
採用しているのでしょうか?


何らかプロジェクト成果を取り込んでいる or 独自実装のどちら
でしょう?


ふんふん  2014/01/12


> Encryptionアルゴリズム


暗号化アルゴリズムにはBlowFishを利用してます。強度的にAESでも良かったんですが、速度の面とライセンス面でBlowFishが優位になりました。ま、暗号アルゴリズムに関しては、実はあんまり重視してなくて、セキュリティの強度を上げるには、上位のネットワークレイヤーで上げるべき、とゆー考えで御座います。


IchiGeki  2014/01/13


BlowFishですね。
上位レイヤーで、というのは私もその方がよいと思います。


ふんふん  2014/01/14


こんにちは。開発お疲れ様です。
例の、接続に時間が掛かる問題ですが…。
クライアント・サーバとも設定をちょこちょこいじっては実験してみましたが、今のところ効果はなさそうです。


何にしても、報告したバージョンまでは問題がなかったので、その時点での何らかの変更が、うちの環境ではまずいということだけは明らかですが…。


m  2014/01/16


> 接続に時間が掛かる問題


うーん、環境依存の可能性が高いように思えますね・・・。


ちなみに、「brynhildr.exe」のフォルダに「log.txt」を作成してログを御覧頂くのは御試し頂けましたでしょうか。まだのようでしたら、接続の際にエラーが発生している可能性もありますので、クライアント側とサーバー側の両方で御確認を頂ければと思います。接続の際にパケットが損失している可能性も否定は出来ませんので。


それ以外ですと、やはりジャンボフレーム等のネットワーク環境によるものが影響していると思われますが・・・謎ですね・・・。宜しく御願い致します。


IchiGeki  2014/01/16


返信ありがとうございます。
log.txtについては、お送りしたところ「特段問題は見られない」というお返事を頂いています。


現状クライアント1台、サーバ2台の構成ですが、サーバ1だけ新バージョンにアップ(クライアントは新バージョンを別フォルダから起動)したとき、旧バージョンで接続したサーバ2は問題ありませんでした。
今ではサーバ1, 2とも最新バージョンになっていますが。


IchiGekiさんに心当たりがないということは、報告させていただいたバージョンではそれほど大きな変更はしていないはず、ということでしょうか。


m  2014/01/16


> log.txt


申し訳ありません、失礼致しました。


接続までに数十秒となりますと、タイムアウトになるはずなのですが、タイムアウトにならない事や、初回だけという事ですのでCPUのパワー不足や回線の帯域不足という事も考えられるとは思っておりますが、バージョンアップで発生となりますとちょっと当てはまらない気もしますが・・・。


ちなみに「Video Codec」は何に設定されておりますでしょうか?


あと、古いバージョンでの「Hybrid Compress」の設定も御知らせ頂ければと思います。


IchiGeki  2014/01/17


すみません、ちょっと誤解させてしまっているかもしれません。
「初回」ということはなく、接続中は継続して通信しますが、切断して再度接続に行くとまた待たされます。
(ですので、「最小化中の通信が問題なら切断して下さい」というのは、それはそれでうまくないんです…)


サーバはAtomD410とD525なので力不足もあるのかも知れません。クライアント側は3770Kなのでまず問題ないはず…。LANは全てGbitで、JumboFrame 9kBにしています。
Codecは先のすいすいさんとの会話を拝見し、同様に変更しました。フレームレートが倍程度になったのでそこは良かったのですが、接続時は変化なしです。
HybridCompressは、帰宅してから返信させていただきます。両端の設定ファイルをそのままお送りする方が良いでしょうか(pwは消しますが)。


m  2014/01/17


> 初回


接続開始時という風に認識しておりましたので大丈夫かと思います。


再度、当方でジャンボフレームの環境(ハブ&イーサカードによるGbit通信)を構築しましてテストを行いました。Brynhildrは「0.9.9.7」と「1.0.1.2」を準備し、イーサカードのMTUの値を9KBに設定し、極端に遅くなる現象を確認した後に、Brynhildrの「socketbufsizelimit=」の値を「16384」に設定し、正常に動作する事を、両方のバージョンで確認を致しました。MTUの値や「socketbufsizelimit=」の値は、サーバーとクライアントの両方を入れ替えてテストを行いましたがいずれも正常でした。また、「Video Codec」の値の変更なども試しましたが特に問題になるような事は御座いませんでした・・・。もしテスト内容に不備があるようでしたら御指摘頂ければと思います。宜しく御願い致します。


IchiGeki  2014/01/17


こんにちは少し古いバージョンで申し訳ないのですが、


だいぶ前からの不具合でクライアントが時々終了時にバッファーオーバーフロー起こします。Windows XP/7で発生


1.0.2ではbrynhildr.dll が関数 10001460内の


10001563 mov [eax],bp
で書き込みバッファーオーバーフローを起こしています。
eaxはesiから代入された値ですこしずつインクリメントされて代入処理が行われています。


最新版はまだ使ったことが無いので起こるか分かりませんが
ずーっト前からある不具合なので、まだ残ってる可能性が


黒翼猫  2014/01/17


> バッファーオーバーフロー


御報告有難う御座います。早速ちょっと調べてみてましたが、やや面倒な箇所の予感がしてますので、どうやって回避するかを模索する必要がありそうです。次回バージョンアップで「回避策:其の壱」を実装して様子を見てみたいと思っております。宜しくですー。


IchiGeki  2014/01/17


新機能のご提案です。


サーバwindows7
クライアントiphone
の環境で便利に使わせていただいております。


クライアントからサーバに介入する時、pauseキーを
使いたいのですが、iphone版orthrosでpauseキーを
送る方法はございますでしょうか。
クライアントでほとんどのキーは使っていますので
pauseキーが使いたいのです。


また、クライアント機がwindowsの時に、CTRL+SHIFT+ESCや
ALT+TABが送りたかったこともあるので、
こちらは迂回策があるものの、ご検討頂ければ幸いです。


送りたいキーストロークをautoitスクリプトのような
形式で記述して、iphoneクライアントであれば仮想キーボード、
windowsクライアントであれば、フローティングのツールボックスなどに
用意しておけると上記は解決するかと思います。
そうすると、座標指定でクリックを送れたりして、
利用可能性が広がります。


また、クライアントでタブブラウザ風に複数サーバを切り替えたり
できると、大変捗ります。


後は、サーバ機で、設定したホットキーを叩くと
クライアントに「ヘルプ!」みたいなシグナルが送られて
クライアントのウィンドウが前面に出てくる機能とか、
クライアントが接続した時、
サーバ機側のタスクトレイ上のポップアップで
接続を教えてくれる機能とか、あると素晴らしいです。


色々書きましたが、新ネタを盛り込む時の
材料としてご検討頂ければ幸いです。
そこそこ一般性のある機能かと思いますので。


みみよん  2014/01/17


テストありがとうございます。


以下、こちらの設定です。
クライアント:boot=1 default=1 control=1 encryption=0 scroll=0 videoquality=4 hybridcompress=1 highcompress=1 maxfps=0
sound=0 coreaudio=1 soundcache=100 topwindow=0 caption=1
forcemousecursor=0 videocodec=0
サーバ:boot=1 default=1 control=1 socketbufsizelimit=16384 publicmode=0 maxfps=0


m  2014/01/17


ふと、気づいたことがありました。
当方のクライアントには、NICが2枚あります。1枚はMBに載ったもので、使っていません(先ほどまで有効だったので無効にしてみましたが変化なし)。
これを通して接続しようとしているなんてことは…ないとは思いますが。


m  2014/01/17


> 新機能のご提案


御提案有難う御座います!


確かにPauseキーが無いですね・・・。その他の機能につきましても検討させて頂きたいと思います。宜しく御願い致します。


IchiGeki  2014/01/18


> これを通して接続しようとしているなんてことは…


ない・・・ような気がしますが。デバイスマネージャで無効にしてあればまず動く事は無いと思います。


あと、サーバーのCPUがAtomのようですので、もし別のCorei等のCPUが御座いましたら御試し頂ければとは思っている次第で御座います。


IchiGeki  2014/01/18


サーバ windows7
クライアント windows7 windowsXP


trueremote126 ですと、30フレーム 500kぐらいでレスポンスも問題なく
動作するのですが、
brynhildr1012 1011 ですと、1~8フレーム 4000kと非常に不安定に
なります。
接続自体は普通に行われますし、コーデックを変更しても変化ありません。


何かうまく動かす方法があれば教えてください。


abo  2014/01/21


> 非常に不安定になります。


なるほど。TrueRemoteと比較するのであれば、「Video Codec」は「GBVC」になると思います。


「Video FPS」を「Maximum」、「WindowScroll」を無効、サーバー側のAeroをOFFにするといった事も有効かと思いますが、TrueRemoteで速度が出ているとの事ですのでちょっと効果の程は難しいですね・・・。FPSが1~8というのは、ちょっとネットワークやOSやCPU等に問題があるように思えますが・・・。(TrueRmoteでは正常という事ですので・・・)


サーバー側の問題がある可能性もありますので、Brynhildrをサーバーとクライアントで2つ起動させて、クライアントの接続先を空白で自分に接続するセルフテストを御試し頂ければと思います。また、サーバーとクライアントの組み合わせを変えてみるなどで御確認を頂けると良いかもしれません。宜しく御願いします。


IchiGeki  2014/01/21


接続が遅い件についてIchiGeki様よりお知らせをいただきまして、無事解消しました(こちらでも報告させていただきます)。
クライアント側のiniファイルには実行ユーザによる書き込み権限が必要で、付与されていないと20秒以上待つことになる、という話でした。


細かい点はまだ不明瞭ですが、ひとまず解決方法としては「iniファイルに実行ユーザの書き込み権限を付与」で問題ありませんでした。
ありがとうございました。


m  2014/01/26


IchiGeki 様


素晴らしいソフトをご提供くださりありがとうございます。
環境依存かもしれませんが不具合のご連絡です。


brynhildr:1.0.0.0
サーバーOS:windows7 ultimate, windowsXP Pro SP3(サービスに登録)
クライアントOS:windows7 ultimate SP1


今までは特に問題もなく快適に使用できていたのですが
昨日気が付くとサーバー機の1台(windows7)に下記のような現象に現れました。
1.マウスカーソルが矢印と砂時計を瞬間的に繰り返される。
2.サービスとして開始されているがタスクバーの通知領域に表示されない。
3.Connection Failed(0×06948)でクライアントから接続できない。


PCの環境として今回の現象が出る前と現在では特に変わりはありません。
以前はちゃんと通知領域にも表示されておりました。
brynhildrの機能からサービス登録を削除すると1は解決します。
サービスに登録せず実行すると1の現象もなく、通知領域にも表示され問題なく使用できます。
エラーなども発生しておりません。


サービスの停止、削除、PCの再起動、再登録などしておりますが解消できません。


一つ気になったのはサービスに登録し実行したときに、フリーのテキストエディターでiniファイルを開くと
「ファイルが更新されましたので再読み込みしますか」というようなメッセージが2,3秒おきに表示されます。
iniファイルの内容(ポートは伏せております)
[ServerMode]
boot=0
default=1
port=5xxxx
control=1
port_5xxxx=5xxxx
maxfps=0
publicmode=0


ご多忙と思います、お手すきの時で結構ですので何かわかることはありましたらお知らせ下さい。
宜しくお願い致します。


Brynhildrユーザー  2014/01/28


> 不具合解消できません。


「brynhildr.exe」の存在するフォルダに「log.txt」というファイルを作成して、一度不具合の発生させ、「log.txt」の中身を送って頂けますでしょうか?


あと、ひょっとすると設定ファイルが破損してしまっている可能性が御座いますので、一度「brynhildr.exe」の存在するフォルダに作成されている「brynhildr.ini」「brynhildr.enc」「brynhildr.tmp」をリネームして動作を試して頂けますでしょうか?


宜しく御願いします。


IchiGeki  2014/01/29


IchiGeki 様


早速のご連絡ありがとうございました。
ご指示いただきました通り設定ファイルの操作で不具合は解消されました。
今回の原因は「brynhildr.tmp」が原因だったようです。
検証した結果は以下のようになりました。
まず不具合の出た状態で「brynhildr.ini」「brynhildr.enc」「brynhildr.tmp」のバックアップを作成。
設定ファイルを1つずつ削除し、ほか2つは不具合のでた状態のものを使用して実行。


iniファイルのみ削除して実行
 同じ現象のまま


brynhildr.encのみ削除して実行
 同じ現象のまま


brynhildr.tmpのみ削除して実行
 通知領域に表示され以前のように動作しました。


以上です。ありがとうございました。


Brynhildrユーザー  2014/01/29


> tmpファイル


それは良かったです!ちょっとtmpファイルの破損を回避する仕組みを検討したいと思います。有難う御座います。


IchiGeki  2014/01/29


お世話になっております。
「接続中のサーバ」を操作して切断する方法がありましたら教えてください。
サービス停止等を行っても、再度起動すると接続されてしまいます。


Brynhildrの接続不安定について、
セルフテストでコーデック変更をいろいろ試してみましたが、
Mjpeg以外で落ち着くときもありますが、だめな時が多いです。
ひどいときですと、4fps 40000kbなんてことも。
trueremote126ですと、30fps 300kbぐらいでほぼ問題ありません。
CPU使用率&メモリ的には十分余裕があります。


abo  2014/02/03


> 「接続中のサーバ」を操作して切断


再度OSを起動しても接続という事は、Windowsサービスに登録しているという事かと思いますが、タスクトレイのアイコン上の右クリックして「Quit」を選択するか、もう1つBrynhildrを起動させてメニューの「Service」で「delete」を選択するとWindowsサービスから削除ができると思います。


> Brynhildrの接続不安定


ちなみにマシンスペックを教えて頂けますでしょうか?


セルフテストでいう事になりますと、恐らくCPUが原因である可能性が高いと思いますが、もしかするとメモリ破損等のハードウェアが要因の可能性があると思います。


IchiGeki  2014/02/05


> 「接続中のサーバ」を操作して切断
説明が下手で申し訳ありません。
イメージ的にはチャットで一時的にbanする感じとなります。
クライアント側からの操作での再接続は可で、自動?再接続は不可にしたい、
と思います。


abo  2014/02/05


> Brynhildrの接続不安定


Windows 7のメモリ診断ツールを行ってみましたが、エラーなしの様です。
富士通 PRIMERGY MX130 S2
AMD Sempron 145 (2.8GHz)
メモリ 2Gx2 DDR3
オンボードVGA ATI Radeon HD4250
SSD 128GBx2 RAID1
Windows7 Pro sp1
スペックは以上となります。よろしくお願いします。


abo  2014/02/05


> 自動再接続


なるほど、クライアントの持つ機能の自動的に再接続されるのを避ける、という事ですね。恐れ入りますが、クライアントの基本動作という事で組み込んでしまっている為に、現状では再接続しないという事をする術が御座いません。申し訳御座いません。


> Brynhildrの接続不安定


CPUが「Sempron」という事ですので、こちらがボトルネックになっている可能性が御座います。Sempronは、クロック数は高いのですが、シングルコアというのと、コア自体がローエンドですので、映像処理にあまり適していないと思われます。宜しく御願い致します。


IchiGeki  2014/02/05


引き続き要望


UltraVNC の場合ダイアログアクセスをログインユーザーで偽装して実行というオプションがあるので、これを実装してほしい。
UltraVNC の場合接続中のセッションがある場合、接続中のセッションにダイアログで確認を取った後、一定時間後どうするか選べるオプションがあるので、これがほしい。


実は、2日ほど謎の接続エラー(数字)で接続できなくて困ってたのですが、単に別のPCから繋いだまま忘れてたのが原因だったので・・・この辺もメッセージ化してもらえるとうれしいなって


後、起動時、ダイアログがTOPMOSTになるんですが、フォーカスがあたってないので結局Windowをクリックしないと入力できないというのが毎回ちょっとフラストレーションです ・ω・


黒翼猫  2014/02/19


> 御要望色々


有難う御座います。状況を確認しつつ検討したいと思います。


IchiGeki  2014/02/19




... 不具合報告の際は、アプリのバージョンやOS等の動作環境の記載を御願い致します。

表記されている会社名・製品名・システム名などは、各社の商標、または登録商標です。
当サイトはAmazon.co.jpアソシエイトプログラムに参加しています。
© 2010 IchiGeki