« 2015年5月 | トップページ | 2015年7月 »

2015年6月

2015年6月30日 (火)

Ver.1.0.3 リリース

Ver.1.0.3 をリリースします。

以下からダウンロードできます。

https://github.com/funfun-dc5/qtbrynhildr/releases

-----------------------------------------------------------------------------------
Ver.1.0.3
-----------------------------------------------------------------------------------
[不具合修正]
・メッセージが一部正しく翻訳されない不具合修正
・「サーバに接続」、「デスクトップのスケーリング」ダイアログのコンテキストヘルプアイコンを無効化 (Windows版)

-----------------------------------------------------------------------------------
[SHA256SUM]
-----------------------------------------------------------------------------------
3976a73463b915bb78aa74275db15098b79b843e2f33de982d9676653daeb8de *qtbrynhildr-ubuntu_x64-v103.run

c0afbf3bd30aae21aa47273712807263890678cb0b76862e0d97b73489767f06 *qtbrynhildr-ubuntu_x64-v103.tar.xz

8342e68c6887efb8ccddc29828a90ba91d2abbd8d25ea97241acb975c69103f4 *qtbrynhildr-ubuntu_x86-v103.run

ab5765e40a65203b6908bf91382e1c09f43f03286ff7fc042f9276dd87174a96 *qtbrynhildr-ubuntu_x86-v103.tar.xz

6fdbde384b901985d6061b723a732f3babd04b9be8e0fe859b554954ee0b26fa *qtbrynhildr-windows-v103.exe

2015年6月26日 (金)

タッチパネル向けの実装 その1

前回の検証で対応が必要と思われる機能がまずは4つ程ありそうなことが分かりました。


1. ソフトウェアキーボード、マウスボタン

2. ピンチアウト、ピンチインによる拡大縮小

3. 画面の回転制御

4. 画面レイアウト(メニューバー、ステータスバーの見せ方)の再考


まずは基本的なところで「画面レイアウト(メニューバー、ステータスバーの見せ方)の再考」を検討します。
画面の小さいタブレット、スマホだとメニューバーやステータスバーを常に表示しておくのはあまりよくなさそうです。

ということでメニューバー、ステータスバーの表示/非表示を制御する機能があればいろいろと融通が効きそうです。
あと、もしかしたら使うかもしれないのでついでに内部的にフレームレスなウィンドウにするためのフラグを設けておきます。iPhoneやAndoirdだと自動的にフレームレスになると思うので使わないかも知れませんけど。

QMainWindowクラスを継承したMainWindowクラス内で

// show or hide
menuBar()->setVisible(true);
statusBar()->setVisible(true);

と設定すれば表示されますし、

// show or hide
menuBar()->setVisible(false);
statusBar()->setVisible(false);

と設定すれば非表示になります。「表示(Display)」メニューを新規に追加し、この制御をメニューでそれぞれ選択できるようにしました。


[メニューバー表示/ステータスバー表示のウィンドウ例]

20150626_165656


[メニューバー表示/ステータスバー非表示のウィンドウ例]

20150626_165704


[メニューバー非表示/ステータスバー非表示のウィンドウ例]

20150626_165710


[メニューバー非表示/ステータスバー非表示(フレームレス)のウィンドウ例]

20150626_172722


ただし、現状GUI上でメニューバーを再表示する手段がないので気をつけなければいけません(^_^;
# .iniを手動で書き換えれば復帰できます。


(*) Windows 8.1 update上で、ALT+PrintScreenキーでウィンドウショットを取得しているのですが、右端の数ピクセルが左端に回りこんでいるのは私の環境だけでしょうか(^_^; 次回からWinShotを使うようにします…


次は、ソフトウェアキーボード、マウスボタン(左,右,ホイール)について検討します。

とりあえず日本語キーボードレイアウトは、KeroRemoteをお手本にしようかと思います。
英語キーボードはうーん…

2015年6月24日 (水)

Android、はじめました

まずはAndroid仮想デバイス(AVD)でどれだけ検証できるか確認しておきます。
先日リリースされたBrynhildrの最新版1.1.2をWindows7 Home (x64)にインストールしてサーバを設定しました。

手動でやるには面倒なので、Qt Creatorを使います。AVDの設定は以前作ったものを使いました。

Android向けにビルドすると一箇所だけコンパイルエラーとなりました。

クラス定義(.h)に書いた以下の様なコードです。

static const qreal SLIDER_FACTOR = 10.0;

エラーメッセージは以下のとおりです。

desktop_scaling_dialog.h:60: エラー: 'constexpr' needed for in-class initialization of static data member 'const qreal qtbrynhildr::DesktopScalingDialog::SLIDER_FACTOR' of non-integral type [-fpermissive]
static const qreal SLIDER_FACTOR = 10.0;
^

「(C++11で導入された)constexprをつけろよ」ということみたいです。暫定で、

constexpr static const qreal SLIDER_FACTOR = 10.0;

として回避しました。この方法だとMinGW64の方でビルドする時はオプションとして-std=c++11 か -std=gnu++11をつけないといけないようです。

とりあえず暫定でビルドは終了したので、実行します。

起動画面

20150623_102313


デスクトップのウィンドウがそのままAndroidで表示されているようです。なんかアプリっぽくないですね。

右上の":"をタップするとメニューが表示されます。「File」->「Connect」とタップすると「接続ダイアログ」が表示されます。(AVDが英語環境なので英語表記です)

接続ダイアログ

20150624_102319


あらかじめサーバでTeraPadを起動しておき、接続しました。スケールを変更してデスクトップ画面が半分くらい入るように調整しました。

20150623_102448


20150623_102456


タップすることでマウスカーソルの移動は可能ですが、キーボード/マウスボタン・ホイールを操作できません「これは使えない…」

仕方がないので入力デバイスの検証は今回は諦めて、サウンドの検証をしてみます。
サーバ側で、適当な動画を再生してみました。

20150623_102618


おー、サウンドは再生できています。


とりあえずAVDでの検証で見えてきたのはタッチパネルでの操作を考慮した追加実装が必要ということですね。

1. ソフトウェアキーボード、マウスボタン

2. ピンチアウト、ピンチインによる拡大縮小

3. 画面の回転制御

4. 画面レイアウト(メニューバー、ステータスバーの見せ方)の再考


今後は無料キャンペーンでダウンロードしたKeroRemoteを試しながら、実機での検証を進めようと思っています。

2015年6月21日 (日)

Ver.1.0.2 リリース

Ver.1.0.2 をリリースします。

以下からダウンロードできます。

https://github.com/funfun-dc5/qtbrynhildr/releases

Dyneに対応するための小修正のみです。Ver.1.0.1では不明な接続エラーとなり、DyneCloudに接続できません。


DyneについてはIchiGekiさんのブログの以下のページを参照ください。

「開発コード「Dyne」始動」


[SHA256SUM]

c2730feb02097492752a8dacfccb8e797a10307efb5724837b99eafafa2fab86 *qtbrynhildr-ubuntu_x64-v102.run

93fd0752b830fdc8caa5aadd25059c64a9dd76fefcaf20c983b0d60b3505c93d *qtbrynhildr-ubuntu_x64-v102.tar.xz

9cb711864b988bfbd9c9ad9c609ff7fd7a4c0431b326ac9842e3e584b6e4b981 *qtbrynhildr-ubuntu_x86-v102.run

42f614653c68d55a9d1d4f1b763540ed83b55032e30eee91a8806ce5fe89b37b *qtbrynhildr-ubuntu_x86-v102.tar.xz

6563cfd9c4593963cfb2518535d6e61a573b0cbf35b231855821fa4cc17c62e1 *qtbrynhildr-windows-v102.exe


-----------------------------------------------------------------------------------
Ver.1.0.2
-----------------------------------------------------------------------------------
[その他変更]
・Dyne(0.1.0)へ対応
・ドキュメント小修正

移植に関するメモ 2015.06.21

2週間も間を空けると自分で書いたコードを忘れそうになりますね…、そろそろ再開しないと。

# ReadMeとマニュアルを少しだけ修正しました。

移植に関して少し記録しておきます。

Qt Brynhildrは大雑把には、

入力デバイスコントロール用(キーボード、マウス)情報その他の送受信
デスクトップ画像情報の受信
サウンド情報の受信

の3つを別々のスレッドでやりとりしています。1つのスレッド(シングルスレッド)でも情報のやりとりはできるのですが、情報のやりとりが間に合わず音が途切れたりするので別々のスレッドに分けています。

ちなみにシングルスレッド版クライアントのソースコードは、

「週刊ブリュンヒルデ創刊号。」http://blog.x-row.net/?p=5841

で紹介されています。

後に公開された「ブリュンヒルデ零式。」、「ブリュンヒルデ零式改。」はマルチスレッド版クライアントになっています。

「ブリュンヒルデ零式。」: http://blog.x-row.net/?p=6818

「ブリュンヒルデ零式改。」http://blog.x-row.net/?p=6911

上記の3つに加えて、Qtのメインスレッド、その他も動いているそうなので常時4つ以上のスレッドが動いていると思われます。


マルチスレッドで構成されるQt Brynhildrを動かすにはやはりシングルコアでは難しいかもしれません。最近のPCならばほぼ2コア以上だと思いますが、低価格な組み込み向けCPUだとまだまだシングルコアかもしれませんよね…

私の持っている「Nexus 7 (2013)」は、クアッドコアなので大丈夫そうな感じですが…

# 随分前にも同じような記事を書いた気がします。

2015年6月 8日 (月)

ソースコード公開とVer.1.0.1リリース

ソースコードをGitHubにアップロードしました。

https://github.com/funfun-dc5/qtbrynhildr.git

また同時にGitHubにてVer.1.0.1をリリース(tag名"v101")しました。

以下でダウンロードできます。

https://github.com/funfun-dc5/qtbrynhildr/releases

開発環境は以下の環境でのみ確認しています。

(1) Cygwin(x64) + Qt5.4.1 + Sphinx1.3.1 + InnoSetup 5.5.5 on Windows 8.1 update(x64) / Windows 7 Home (x64)

(2) Qt5.4.1 + Sphinx1.3.1 on Ubuntu(x64/x86) 14.04 LTS

(*) Qt5.4.2はサウンド周りが少し変更されているようで現在ビルドは可能ですが、正常動作しません。

(*) Windows 10 Pro Insider Preview (x64/x86)でも簡単な動作が可能なことは確認しました。
日本語IMEによる日本語入力やサウンド再生など

# しばらく休憩します(o^-^o)

-----------------------------------------------------------------------------------
Ver.1.0.1
-----------------------------------------------------------------------------------
[不具合修正]
・デスクトップをスケールダウンしてスクロールバーが不要となる場合でも必ずスクロールバーが表示される不具合修正 (Windows 7のみ)
・インストーラが作成するショートカット名が一部日本語固定となる不具合修正 (Windows版)

[その他変更]
・ログ出力項目追加(サウンドのサンプリング周波数に関するログ)

(おまけ) Windows 10 Pro Insider Preview (x64) で試しました。

Windows_10_x6420150607191452

Spartan はじめてみました… Microsoft Edgeでしたっけ。

Windows_10_x6420150607204846


2015年6月 4日 (木)

Ver.1.0.0 HBD

正式リリース初版(Ver.1.0.0)としてリリースします。

3ヶ月に渡って行ったβリリースに対して不具合報告、改善案をいただいた方々に感謝致します。
まだまだ不具合、改善点などあるかと思いますが、少しずつ改善していけたらと考えています。

また、リリースに合わせて、GitHubにてソースコードを公開します。

今回は「パッケージはGigaFile便からのダウンロード」としますが、GitHub登録後にGitHubのリリース機能を利用してパッケージをダウンロード可能にする予定です。(GigaFile便からのダウンロードが無効になる2015/6/11までには…)

次はAndroid版を確認したいと思っていますが、すぐ取り掛かれるかは分かりません…
なんとなくAVDでは動いてるっぽいですが実機でやってみないと操作性が確認できないですね、やはり。


(*) 先日リリースされたQt5.4.2は私の環境ではconfigure.exeがなぜかクラッシュしてしまい、スタティックリンク用Qt5.4.2環境が作れていません…(;ω;)

-----------------------------------------------------------------------------------
Ver.1.00 (正式バージョン番号:1.0.0)
-----------------------------------------------------------------------------------
[新規機能]
・なし

[デフォルト動作変更]
・なし

[その他変更]
・バージョン名変更("rc1"の削除のみ)
・ReadMe.txt, マニュアル(html)の小変更

[不具合修正]
・なし


------------------------------------------------------------------------------
[Windows 7/8/8.1 (32bit/64bit)] Ver.1.0.0
------------------------------------------------------------------------------

GigaFile便からダウンロード(8.0MB)

SHA256SUM:b95583e2e2b94b209e5d31d72c77aafd77d66b37b8ea2f7a4a7929f1878a04f6

GigaFile便からダウンロード(15.0MB) [Qt5.4.2 shared DLL version]

(追記) 一部の環境ではQt5.4.2ベースだとサウンド再生に失敗することがあるようですのでリンクを無効化します。
Windows 10 Pro Insider Preview (x64)では再現しました…

ここにある、

[QTBUG-42648] Greatly improved QAudioDeviceInfo supported formats detection.

が関係しているような気がしますが…5.4.2の差分は以下のようです。

https://wiki.qt.io/Change-files-in-Qt-5.4.2

SHA256SUM:a212f5a775eecf5651bca5dba9d45b6afcda8205362e8b3a0ed3707f6d4571ff


------------------------------------------------------------------------------
[Ubuntu 14.04 LTS (x64/x86)] Ver.1.0.0
------------------------------------------------------------------------------

GigaFile便からダウンロード(x64)(2.1MB)

SHA256SUM:f77126aaedaada6c9bbea99d7c40661c363169a0cc4ccbb78099025100101b4a


GigaFile便からダウンロード(x86)(2.1MB)

SHA256SUM:73330781a55d99950fee4d7d3332493b212716d6c943ddb1844dcc78c77197eb

2015年6月 2日 (火)

Qt5.4.2がリリースされました…

Qt5がマイナーバージョンアップされました。#絶妙のタイミングで…(◎´∀`)ノ

んー、どうしましょうかねぇ…

« 2015年5月 | トップページ | 2015年7月 »