2013年6月27日木曜日

Networkが断続的に切断されるのでLANケーブルを疑ってみた

lan-networkWindowsからMacにVNC接続しているときに突然応答がなくなったり、MacからWindowsにファイルをコピーしていると途中で失敗するので、原因を考えてみた。

環境: Windows 8 Pro(英語版), OS X 1.8.4, AtermWG1800HP(ルーター), LSW3-GT-5NS(ハブ)

最初はMacのsambaに原因があるじゃないかと調べてみても、そのような情報はない。。。今度は、何となくLANケーブルにあたりを付けて調べてみた。

全てのLANケーブルを調べてみると、いくつか「カテゴリー5」を使ってた。

ほとんど「カテゴリー5e」のケーブルだったので、メインPCの経路はすべて「カテゴリー6」に変更。

今のところいきなり切断される現象は起きてないので、今回はケーブルが原因だったみたい。

 

ちなみに変更する前と後で回線速度を測定してみた。
※計測する時間帯で結果がかなり異なるので注意。

前(ダメケーブルがあったとき)

image

後(全ての経路をカテゴリー6の新品に)

image

 

GIGAZINEでの実験ではケーブルで差は出ないみたい。

 

個人的にもいくつか抜き差しして試してみたけど、極太の「5e」よりフラットな「5」の方が速度がでることがあった。LANケーブルを選ぶときは「品質」重視で選んだ方が良さそう。

 

< Related Posts >

2013年6月19日水曜日

Galaxy S4に対応したAndroid Emulator AVDを作成

android-virtual-deviceTitanium Mobileを使ってAndroidアプリを作っている際にGalaxy S4の環境での動作確認がしたくて、AVD(Android Virtual Device)に似たような環境を作ったときの覚書。

環境: Mac OS X 10.8.4, Android SDK Tools 22.0.1

Official Documentを参考にしながら。

 

まずはAVD Managerの起動。
/path-to-android-sdk/tools/android → Android SDK Managerを起動 → Tools → Manage AVDs...

デバイスを追加。
Device Definitions → New Device...

項目 設定値
Name Galaxy S4
Screen Size (in) 5
Resolution (px) 1080x1920
Sensors ALL
Cameras Front, Rear
Input No Nav
RAM 500MiB (実際は2GB)
Size Normal
Screen Ratio long
Density xhdpi (参考Site
Buttons Software
Device Status Portrait, Landscape

 

Deviceの一覧に表示されるので、「Create AVD」からAVDを作成。

項目 設定値
AVD Name galaxy_s4
Device Galaxy S4
Target Android 4.2.2 - API Level 17
CPU/ABI ARM (armeabi-v7a)
Keyboard on
Skin on
Front Camera None
Back Camera None
Memory Options RAM: 1024
VM Heap: 64
Internal Storate 2 GiB
SD Card 1 GiB
Emulation Options Use Host GPU

作成完了。

そのままStartすればエミュレータが起動する。

コマンドから起動する場合
$ cd /Applications/android-sdk-macosx/tools/

名前確認
$ ./android list avds

起動
$ ./emulator -avd galaxy_s4

 

Titanium StudioやTitanium CLIを使って特定のAVDを指定したビルドは出来ないので、AVDに手動でインストールしてみる。

まずは「--build-only」オプションを付けてビルド実行
$ titanium build -p android --build-only

エミュレータ(デバイス)にアプリをインストールするのはADB(Android Debug Bridge)を使う。
参考:Android Debug Bridge | Android Developers
$ cd /Applications/android-sdk-macosx/platform-tools/

接続しているエミュレータ/デバイスの一覧
$ ./adb devices

ビルドしたアプリをインストール
$ ./adb -e install -r "/Users/daiki/Documents/Titanium Studio Workspace/hoge/build/android/bin/app.apk"

ddmsでログを監視しながらデバッグする。

 

結構レイアウトが崩れるので何か手を考えないといけない。。。

 

< Related Posts >

2013年6月17日月曜日

Windows 8 + nasne + REGZA TV + Android + iPadで快適テレビ生活

windows8_regza_nasne_android_ios日本での新生活を始めて、家のどこにいてもテレビや動画や音楽を楽しめる環境を構築してみた。(2014/07/11 更新)

やりたいこと

  • テレビをAndroid, PC, iPadでも見たい
  • テレビ番組の予約をAndroid, PC, iPadでも出来るように
  • 外出先でもテレビ番組の予約をしたい
  • PC内の動画や曲をテレビに出力

 

構築した環境

 


テレビをAndroid, PC, iPadでも見たい

これはnasneを使う。

nasneが放送中の番組をライブチュナーで流してくれるので、それぞれアプリをインストールして閲覧可能(REGZAではライブ配信はできない)。

録画したのもこれらのアプリを通さないと再生できない(DTCP-IPで暗号化されているから)。

DiXiM Digital TV Plusで見るときはHDCP対応のビデオカードが必要。さらにプライマリディスプレイでのみ再生可能なので注意。

ちなみにMacにはDTCP-IP対応したDLNAアプリは今のところないみたい。

専門用語が出てきたので簡単に説明。

用語 説明
DLNA
(Digital Living Network Alliance)
情報家電同士の通信仕様を策定する団体名。
策定された仕様(ガイドライン)は$500で入手可能。
この情報を漏洩した場合は800万ドルの罰金なのでネットで探しても見つからない。
あくまでガイドラインなので具体的な通信方法は載っていない。
元になっているのはUPnPというプロトコルなので、対応するアプリを開発する場合はUPnPを調べた方がいいみたい。
DTCP-IP
(Digital Transmission Content Protection - IP)
音声・映像向けの暗号化方法。
この規格を採用しているのは日本だけ。
対応していないと地上デジタル放送を(録画したのも)再生することができない。
UPnP
(Universal Plug and Play)
名前の通り、機器同士が簡単にネットワーク上で通信するための規格。
ネットワークに接続するだけで、他のUPnP対応機器と通信が可能になる。
オープンソースのライブラリもあるので導入は難しくないと思う。
HDCP
(High-bandwidth Digital Content Protection)
DVI、HDMIの信号を暗号化する方法。
出力側と入力側の両方が対応していないとコンテンツを再生できない。

 

 


テレビ番組の予約をAndroid, PC, iPadでも出来るように(外出先でもテレビ番組の予約をしたい)

これもnasneの機能が便利。

REGZAでも外部からメールを送ると予約してくれる機能があるらしいけど、番組表を見ながら直感的に予約できるnasneが便利すぎて使ってない。

ここにPC、Androidで接続して、nasneを登録すれば予約が可能。ルーターの設定も必要なかったので、nasneが定期的にチェックしにいってるのかな?

REGZAでも録画予約出来るので、テレビの前にいる場合はREGZAで予約。外にいる場合やREGZAが予約でいっぱいになったらnasneを使う感じ。

家でテレビをほとんど見なくなった。nasneとBDZ-EW510で録画してスマフォで通勤時間に見るのが便利すぎる。

 

 


ブルーレイレコーダー BDZ-EW510を買った(2014/07/11 追記)

見たい番組がnasne1台だと録りきれなくなったので、いろいろ検討した結果Sony製BDZ-EW510を購入した。

選んだ理由

  • CHAN-TORUでnasneの予約済みを見ながら選択出来る。
  • Nexus 5のTwonky Beamで動作確認済み。
    参考: Twonky Beam 端末/レコーダー対応表
  • 嫁の実家から送られてきたブルーレイディスクが見たかった
  • 外からテレビ視聴と録画済み番組を見れる

 

感想など

  • DRモードで録らないとTwonkyで見た時に画質が悪い
  • たまにTwonkyで音飛びすることがある
    → 同じ動画でも大丈夫なときがあるので、Twonky側の問題だと思う
    → nasneで録ったのは一度もなかった
  • 外から視聴するのは別途専用アプリが必要(500円)
  • 外からテレビ視聴出来るのは面白かったけど実際使ってない
  • CHAN-TORUで予約した番組を認識してくれない(予約マークが付かない)ことがあるので、この辺nasneの方が安定している

nasneをもう一台買うか迷ったけど、BDZ-EW510には2チューナー内蔵でやれることも増えたので満足。

 

 


PC内の動画や音楽をテレビに出力

Windows 8は標準でDLNAに対応しているので、REGZAの電源を入れて、出力したい動画を右クリックすると「Play to」の項目にREGZAが出てくるはず。

同じようにして音楽ファイルもテレビに出力することが可能。

playto

REGZAからPCの動画を参照するためにはWindows 8にアクセス許可を与える。

Control Panel → Network and Sharing Center → HomeGroup → All all devices on this network ... (Media streaming options)

  image

REGZAのリモコンで
クラウドメニュー → マイページ → メディアプレイヤー動画
を選択すると、PCやnasneが見えるはず。

 


その他便利なこと

リビングに置いてあるiPadで閲覧しているYouTubeの動画をREGZAのTVに表示することが可能。この動画がわかりやすい。

TVでストレスなくYouTubeを見よう!!(REGZA) - YouTube

 

 


最後に

将来的には、この環境にXbox Oneが加わって音声やジェスチャーで操作する予定。

テレビやnasneもAPIを提供してくれれば、便利な機能は開発者が勝手に作ってくれるのに。。。と思う今日このごろ。

 

 

< Related Posts >

2013年6月16日日曜日

Windows8 + マウスジェスチャーソフト「MouseGestureL.ahk」

mouse-gesture

Windows 8で使いやすいマウスジェスチャーを調べなおしてみた。

環境: Windows 8 Professional 64bit 英語版

「MouseGestureL.ahk」というのがいろいろ出来て便利そう。

 

同じジェスチャーでウィンドウの最大化と元に戻す動作を実現するスクリプトはこんな感じで実現できる。

if(MG_Win("MinMax")=1){
WinRestore
}else{
WinMaximize
}

ヘルプを読める人なら便利に使えると思う。

 

< Related Posts >

2013年6月13日木曜日

Hyper-V上でIE6, 7, 8, 9, 10の動作確認環境を構築

hyper-v_with-ieWindows 8 Proを導入したのでHyper-Vを利用してみた。

環境: Windows 8 Professional 64bit (英語版)

Hyper-Vを導入するまでは前の記事を参考に。

検証用の仮想マシンはMicrositeのサイトから無料でダウンロードできる。

image

これらは「Hper-V Integration Service」がインストール済みなので、インポートするだけですぐに使える。

Hyper-V導入直後はネットワークが未設定なので、下記サイトを参考に設定しておくのを忘れずに。

仮想マシンインストール直後は日本語が表示できないので、下記サイトを参考に設定する。

「Install files for East Asian launguages」をしている途中で下記ファイルがないと怒られる場合は、Install CDのI386\DRIVER.CABの中にあるのをC:\WINDOWS\I386に保存・指定すると無事進む。

  • kbd106n.dll
  • f3ahvoas.dll

 

ただし、この仮想マシンは最大でも90日間しか使えない。詳細は下記サイトの「Time Limits on the VMs」を参照。

日本語環境を整えるまでが面倒くさいので、90日間しか使えないのは痛い。

 

 

< Related Posts >

2013年6月12日水曜日

Core i7 3770+P8H77-VでHyper-VをInstall. VMware Fusionから変換

vmware-fusion_convert-to_hyper-vWindows 8 Professionalを新規Installしたので、Hyper-Vを試してみたときの覚書。

環境: Intel Core i7 3770, ASUS P8H77-V, Windows 8 Professional 64bit (英語版), VMware Fusion 5.0.3

まずハードウェア構成がHyper-Vの要件を満たしているか確認。詳しくは下記。

マザーボードP8H77-Vのデフォルトでは、Intel Virtualization TechnologyがDisableになっているので注意。

ハード要件を満たしていれば、
Control Panel → Programs and Features → Turn Windows features on or off
から、Hyper-Vを有効にする(要再起動)。

image

 

すでに仮想マシンはVMware Fusion上で動いているので、そちらから変換する。下記サイトを参考に「StarWind(V2V) Converter」をダウンロード。

変換元と変換先を選ぶだけなので簡単。

ちなみに下記サイトからIE6, IE7, IE8の動作検証用仮想マシンをダウンロードできる。

 

< Related Posts >

2013年6月3日月曜日

[Titanium Mobile] AndroidとWordPressとのやりとりでCookie rejectedされる

wordpress_android_cookie-rejectedWordPressと連携するAndroidアプリを作っている時に「Cookie rejected」の表示が出るので、気になって調べてみた。

環境: Titanium SDK 3.1.0.GA, Android 2.3.3(API 10), WordPress 3.5.0

表示されるWarningはこれ

W/ResponseProcessCookies( 4304): Cookie rejected: "BasicClientCookie[version=0,name=wordpress_eb9dbbb,domain=hoge.net,path=/wp-content/plugins,expiry=null]". Illegal path attribute "/wp-content/plugins".
W/ResponseProcessCookies( 4304): Cookie rejected: "BasicClientCookie[version=0,name=wordpress_eb9dbbb,domain=hoge.net,path=/wp-admin,expiry=null]". Illegal path attribute "/wp-admin".

PHP側でsetcookieするときに表示される。

アプリからの通信は特定のURLに送信して、プラグインの中でフックして処理をするやり方をしているので、「ADMIN_COOKIE_PATH」と「PLUGINS_COOKIE_PATH」をandroidアプリからの通信の場合は別の値にする必要があるみたい。

wp-load.php → wp-config.php → wp-settings.php → default-constants.php
と実行され、プラグインを読み込む前に定義されてしまうので、wp-config.phpに下記を追記。

if (!empty($_REQUEST['android']) ) {
    define( 'ADMIN_COOKIE_PATH', '/');
    define( 'PLUGINS_COOKIE_PATH', '/');
}

もちろん「android」というパラメータはアプリから送信する必要あり。

 

< Related Posts >

Related Posts Plugin for WordPress, Blogger...

Blog Archives