のらぬこの日常を描く

ノージャンルのお役立ち情報やアニメとゲームの話、ソフトウェア開発に関する話などを中心としたブログです。

【酷評】AmazonEchoとGoogleHome 両方使って解った事は?【レビュー】

どうものらぬこです。

長らく招待制での販売が続いていたamazon echoシリーズですが、2018年の春からようやく一般販売が開始されました。

実は僕も、AmazonEcho plusと、ついでにGoogle home mini を購入し、なんとかうまいこと使えないかと、日々模索をしている真っ最中です。 f:id:noranuk0:20180411163305j:plain

今回は、僕が使ってみた範囲の中で、それぞれのスピーカーシステムの特徴を比較しつつ、それらがどの程度使い物になるのか、ということを記事にしてみたいと思います。

スピーカーとしての品質

僕が持っているのは、実売180000円程度の amazon echo plus と、実売6000円前後の google home mini になります。価格帯が違いすぎるので、2つのスピーカーを音質で比較するのはさすがに無理があると思います。

音のボリューム感、広がり、音質など、どれをとっても、google home mini は amazon echo plus には敵いません。amazon echo plusがしっかりバランスの取れた良い音で鳴らしてくれるのの対して、google home miniは、頑張って鳴らしてはいるけど音場が狭くて低域が出ていないという感覚です。

ただ、google home miniの音質について、ネットの評判を見ると、結構ひどいとか、低音は出ないとか、音楽再生用に使うのは辛いとか割と酷評されています。ですが、正直そこまで酷くはないと思います。

その手のレビューを読んで、「ああ、液晶モニターのおまけでついている内蔵スピーカーレベルの音なんだな」と思っていたのですが、さすがにそれとは比べ物にならないくらいの音は出ます。確かに評判通り低音は出ませんし、同程度の金額で買えるオーディオメーカー製の有線/無線スピーカーには及びません。 そのあたりは、アシスタント機能の付加価値をどれだけ感じ取れるか、で評価が分かれると思います。

音楽ストリーミングサービス連携

音楽ストリーミングサービスは、amazon music(echo plan:月額380円でamazon echo シリーズ1台で amazon music unlimited の配信曲が聞き放題のプラン)と、play music(有料契約なし:自分の手持ち楽曲をクラウドに保存することが可能。保存した曲はgoogleアカウントでログインすれば google musicアプリなどから自由にストリーミング再生が可能)を利用しています。

初めに、有料プランで配信されている曲目についての話をします。

どの音楽ストリーミングサービスも大体事情は同じらしいのですが、日本の楽曲の配信状況は、あまりよいとは言えない状況のようです。少しづつ改善はされてきているようですが、現在でも、CDでリリースされている曲に比べて音楽ストリーミングサービスで配信されている曲はまだまだ少なく、「自分の聴きたい曲が自由に聴ける」というよりは「配信されている曲の中から自分の聴きたい曲を探す」という状態になっている感じです。

また、僕のようなおじさん世代が中学~高校時代に聴いていたJ-POPの収録は特に少なめで、そういった期待を込めて配信曲を眺めてみると、正直、かなり残念な気持ちになります。

最近の曲に関しても、配信されるかされないかは、権利を持っている会社などの意向で決まってくるようです。

流行っていようがいまいが、配信されるかされないかは、権利を持っている会社次第という事です。人気の出た曲や代表曲は入っているけど、マイナーな曲は入っていない、というわけではありません。

例えば、SMAP(解散済)の曲は、検索してもオルゴール曲しかヒットしません。「世界で一つだけの花」すら配信されておりません。

逆に、AKB48で検索すると、CDを大人買いする層に十分儲けさせてもらっているという先ずは大勢の人にたくさんの曲を知ってもらいたいという判断なのか、配信曲はかなり豊富です。

聴きたいアーティストさんにもよると思いますが、日本の曲を幅広く聴きたいのであれば、新品のCDを購入するか、実店舗を構えたレンタルショップやネットのレンタルショップなどでCDを借りるか、中古ショップを漁るしかないのかな、という気がいたします。

amazon musicの使用感

スマホ向けに amazon music というアプリが公開されています。しかし、残念ながらこのアプリで聴きたい曲を探してamazon echo で再生する、ということは(おそらく)できません。chromecast / chromecast audio / google home から音楽を流すように指示することは出来るのに、自社のスマートスピーカーには対応していない(?)というのも、なんとも不可思議な感じです。

echoで音楽を再生するには、「アレクサ、~~な曲をかけて」と話しかけるか、amazonから提供されているスマホアプリの「アレクサアプリ」から再生するプレイリストを選ぶ必要があります。「朝に合う曲」「集中できるジャズ」「フィットネス中に聞くヒップホップ」など、時間やシーンに合わせてたくさんのプレイリストが用意されていますが、アレクサアプリから配信されている楽曲の検索などは出来ません。

一応、amazon musicアプリで作成した自分オリジナルのプレイリストの再生をアレクサにお願いすることはできます。ただ、お願いするには「アレクサ、ライブラリの○○のプレイリストを再生して」という風に少し回りくどい言い方をしなければなりません。シャッフル再生するには「アレクサ、ライブラリの○○のプレイリストをシャッフル再生して」と言う必要があり、かなり面倒くさいです。

また、amazon music の配信曲に関しては、年代指定やジャンル指定などもできるのですが、AIという割にはあまり賢くなく、例えば「2000年のJ-POPをかけて」といお願いは聞いてくれるのですが「1990年から1995年のJ-POPをかけて」というお願いは理解してくれません。ひいき目に見てもAIとはとても呼べない、人工無能の域はまだ脱していないという印象です。

play music の使用感

僕は有料プラン未契約のため、自分の手持ち楽曲の再生しかできません。そのため、ストリーミング配信曲を再生する際の使用感については書けないのですが、少なくとも amazon musicよりは使い勝手は良いと思います。google home (mini) のストリーミングプロトコルスマホからgoogle homeに音楽の再生をお願いするための通信手順)は chromecast/chromecast audio と同じ形のようで、google music等のキャストに対応したアプリからは、chromecast /chromecast audio に音楽をキャストするのと同じ操作で、google home にキャストすることができるようになっています。

また、音声でお願いする場合も、「ok google 、曲をかけて」と言えば、play musicに保存された楽曲ををシャッフル再生してくれます。ただし、手持ち楽曲のアルバム指定、アーティスト指定は出来ないようで、例えば「ok google 堀江由衣の曲をかけて」とお願いしても、「見つかりません」と返されてしまいます。アレクサにお願いする感じで、「ok google ライブラリの~~」とかいろいろ試してみましたが失敗に終わってしまいました。

声でお願いできるというのは思っていたよりも便利ではあるのですが、AIスピーカーというジャンルに期待して使ってみると、どちらのスピーカーも完成度的にはまだまだ発展途上と思えてしまいます。

その他、使ってみた機能

podcastの再生

僕は、週一回更新される「伊藤洋一のRound Up WORLD NOW! | ラジオNIKKEI」というコンテンツを毎週聞いています。

特定podcastの最新トピックの再生を声でお願いできるのか確認はしていないのですが、できたとしてもとてもめんどくさそうなので、僕は「podcast addict」というスマホアプリを利用しています。google製のデバイスへのキャストに対応しているため、スマホ操作で google home mini に再生指示を出しています。

天気予報

この程度は、どちらのスピーカーもそつなくこなしてくれます。もちろん、今日の天気だけでなく、今夜の天気や明日の天気も教えてくれます。 また、「明日雨降る?」などの質問にも、言い回しは異なりますが、どちらのスピーカーも「雨は降りそうにありません」などと答えてくれます。

スマホを探す

google homeandroid スマートホンの組み合わせなら、google home に「ok google スマホを探して」とお願いすると、スマホから音を鳴らすことでスマホの場所を教えてくれます。

同じようなことは、以下のサイトにアクセスすればPCからも実現できます。

https://www.google.com/android/find?hl=ja

しかし、出かける直前で急いでいるときなどは声でお願いした方が若干時間短縮になるかもしれません*1

そのほかできること

拡張機能のお話

あまり使いこんでいないため、紹介できることは実はほとんどないのですが、amazon echo はスキルという形で音声コマンドと応答のバリエーションを増やすことが出来るようになっています。

僕は「JR東日本」のスキルを追加しています。 「アレクサ、JR東日本常磐線各駅停車の運行情報を教えて」とお願いすると、平常運転なのか遅れているのかを教えてくれます。使いようによっては、遅延証明書もらえそうだし、多少遅れても大丈夫、等、家を出る時間の調整にも使えるんじゃないかと思います。

google home mini と amazon echo を繋げてみる

前述のとおり、amazon echo plus と google home mini を比較すると、当然 amazon echo plus の方が音がいいです。

amazon music の配信曲を聞く分にはよいのですが、手持ち楽曲の再生は、現状だと(ローカル保存された曲をplay musicに曲をアップロードしたうえで)google home mini から再生することしかできません。

実はつい先日、google home mini が外部のbluetoothスピーカーに対応しました。

そこで、amazon echo plus を google home mini のスピーカーに指定するとこで、google home mini から流れる曲もイイ音で聴けるようになるんじゃないかとおもって試してみました。

やりたかったこと

play music の曲も、amazon musicの曲もイイ音で聞きたい。

設定方法は割と簡単です。まず「アレクサ、ペアリングして」とお願いすると amazon echo がペアリングモードになります。続いて、「google home」アプリから、google home のデバイス設定画面を開き、デフォルトのスピーカーを設定メニューを選びます。リストアップされたスピーカーの中に amazon echo があるはずなのでそれを選択すれば完了です。

ただし、結論から言うと使い物になりませんでした。

google homeの音声出力先をbluetoothスピーカーに設定すると、bluetoothスピーカーの出力出力を常に占有した状態になってしまいます。

一度ペアリングしてしまうと、amazon echoで何かしようとしても、google homeに邪魔されて実質何もできなくなってしまいます。

例えば、「アレクサ、音楽かけて」amazon echo側で音楽をかけるなどの操作をして、amazon echo側からペアリングが解除されても、google home で音楽を再生している、していないにかかわらず、即再接続してきます。そうすると、amazon echo での音楽、音声再生が中断されてしまうのです。

google home まじウザすぎ・・・

また、音楽は amazon echoから流れてくるのですが、googleアシスタンスのナビゲーション音声はgoogle home 本体から再生されます。この音量バランスがとても悪いです。

google home は ナビゲーション音声と、音楽、bluetooth出力音のボリュームの個別設定できません。これはamazon echo も 同様です。どう調整しても、どれかの音が大きすぎたり小さすぎたりで、残念ながら使用可能なレベルには至りませんでした。

結局、今はほとんど使っていない ipod touchamazon echo plus に bluetooth常時接続し、手持ちの曲を聴きたいときは、ipod touchgoogle music アプリを立ち上げて、そこから再生することにしました。

ipod touchbluetooth 接続スピーカーで音楽を再生していても、相手(この場合はamazon echo)から切断されたら、音楽再生は停止されます。もちろん、すぐに再接続しにいくようなこともありません。そしてipod touchで再生を再開すれば、amazon echobluetoothで再接続してから再生を再開してくれます。普通はこういう動きするよねっていう挙動になっているので扱いやすいです。

少し余談ですが、iOS版のgoogle musicは、iOSのアプリ規約の都合上?アプリ内に有料版の契約案内などは表示されないため、僕みたいに有料契約はせずに手持ち音楽のストレージとして使ってる人にはandroid版のアプリよりすっきりしていて使いやすいかと思います。

どんな人にお薦めなのか?

アルバムやアーティスト主体ではなく、雰囲気で音楽を聴きたい人

いろいろなジャズが聴きたい、クラシックが聴きたい、ピアノ曲が聴きたいなどなど、気分やムードによって家の中で流す音楽を選びたい人にはお薦めだと思います。 あまり難しいお願いは理解してくれないこともありますが、「ジャズかけて」等と話しかけるだけで曲が再生されるのは確かに便利だと思います。 スマホ取り出して、アプリ立ち上げて、聴きたいジャンルやプレイリストを選んで、出力先スピーカーとペアリングして再生ボタン、とかやるよりははるかに簡単です。

逆に、特定のアーティストさんの新曲をいち早く聞きたいとか、今期のアニメの主題歌を流したいとか、ゲームのサントラを聴きたいなど、聞き放題プランで配信されていない曲をメインで聴きたい方は、CDを購入、レンタルする、あるいは、デジタルミュージックを購入し、スピーカーは普通の有線/無線スピーカーを買ったほうが良いんじゃないかと思います。

色々考えてみたのですが、やっぱり現時点では、これくらいかなー、という結論に達しました。

まとめ

AIスピーカーというのは面白い試みだとは思います。ですが、肝心の機能が未成熟であったり、音声コマンドの融通が利かなかったり不便な点も多く、現状のままだと、Playstation VR等と同様、アイデアもコンテンツも周辺技術も未成熟なまま、話題にはなったけど大して流行りもせず、徐々に記憶から消えていくようなジャンルになるんじゃないかと感じています。

最後までお読みいただいてありがとうございました。

*1:それ以前に家の中でスマホなくすとかどんだけー

【WiifitU】1か月で減量3.5kg!買い切り2万円で自宅がジムに!?

どうものらぬこです。

子供のころから運動全般は嫌いでした。 社会人になっても、朝遅刻しそうになって走る時以外、ほとんど運動らしい運動をしていませんでした。 その結果、大学時代と比較して、身長は全く変わらないのに(当然だけど)、体重だけは20kgほど増加してしまいました。 さらに、体重の増加が見た目(おもにお腹)にも露骨に表れてきて、それからさらに10年の時が経ちした。

「運動した方がいいのかなー」と思いつつも特に何もせず、そのまま基本ダラダラと生活してきました。そうしたら残念なことに、前回の健康診断では「悪玉コレステロールが高め」との診断をもらい、少しは運動して痩せた方がやっぱりいいよな、と思ってからさらに10か月。

とてつもなく重かった腰をようやく持ち上げ、中古でけっこう安かった「WiiU本体一式」と、ダイエットや筋トレ等をサポートしてくれるゲーム「Wiifit U」を買い揃え、1月ほど前から、毎日少しづつ体を動かすことを始めてみました。


WiiUソフトWii Fit U 紹介映像 Wii Fit U

効果が出てくるまでには少なくとも3か月はかかると思っていたのですが、トレーニング始めて一か月、意外と早く成果が数字に表れてきたので、今回はその結果と、Wiifit U の紹介記事を書いてみたいと思います。

ブログ主の体系スペック

まずは軽く体型スペックの紹介です。

  • 性別:男
  • 職業:社会人
  • 年齢:35進数で17歳*1
  • 身長:168cm
  • 体重(20年前):48kg
  • 体重(1か月前:運動習慣がない頃):66~68kg
  • 体重(現在:運動初めて1か月ちょい):63~65kg

Wiifit Uを始めてからの体重変化をグラフで見るとこんな感じです。 f:id:noranuk0:20180327000508j:plain

トレーニングを始めてから一か月と5日ほどたってしまったため、グラフの左右が若干見切れていますが、多少上下しつつも緩やかな右肩下がりのグラフになっているのがお分かりいただけるかと思います。

悩みのお腹も、ここ最近若干コンパクトになってきた気がします(ウエスト測ったら、去年の健康診断の結果比較で3センチほど減っていました)。 見た目に関しても、おへそ周りは相変わらずですが、あばら骨の下あたりは、余分な肉がそぎ落とされたような感じになっています。

そんなわけで、ここからは、引きこもり属性な方、ジムに行くのは面倒くさい、ジムに着ていく服がない、というような方でも割と手軽に始められる「Wiifit U」をあの手この手で紹介していきたいと思います。

ちなみに、Wiifit U という名前からお分かりの通り、こちら Wii U で動くゲームアプリになります。Wii U 本体は1~2年ほど前に生産終了となってしまいましたが、中古は現在でも多く出回っており、使用感などにもよりますが、比較的安価で入手することが可能です。

そもそもWiifit Uってどういうもの?何ができるの?

まずは、Wiifit U で何ができるのか?の紹介です。

このエントリーの上の方に貼り付けたYoutube動画や公式サイトを見てもらうのが一番手っ取り早い気もするのですが、せっかくなので紹介していきます。

Wiifit Uには、ヨガ、筋トレ、有酸素運動、ダンスなど、自宅でできる77種目のトレーニングメニューが入っており、これを、テレビの画面を見ながら実践することができます。 バーチャルトレーナーさんが実演してくれるので、動きがよくわからない、どこに力を入れればいいのかわからない、といったこともありません。

f:id:noranuk0:20180331003349j:plain

軽い運動レベルのもの、結構ハードなもの、ゲーム感覚で楽しめるものまでバリエーションも豊富です。

f:id:noranuk0:20180331003449j:plain f:id:noranuk0:20180331003415j:plain

また、「Wiiリモコンプラス(前作ハード Wiiのリモコンの上位版)」や、「バランスWiiボード」という目盛りの付いてない体重計みたいな機械(中に重量センサーとかバランスセンサー?とか入ってる)を使って運動中の体の動きをモニターすることにより、正しく動けているかの確認や、消費カロリーの計測もできるようになっています。

f:id:noranuk0:20180331003259j:plain

ほかにも、重点的に鍛えたい部位からトレーニング項目を提案してくれる機能や、複数のトレーニング項目を組み合わせてオリジナルのトレーニングメニューの登録もできるようになっています。

さらに、トレーニング効果が実感できるような仕組みも備わっています。

例えば、先ほどのバランスWiiボードは体重も測れるようになっていて、日々の体重の変化をWiiUに自動で記録できるようになっています(冒頭に乗せたグラフです)。

また、おまけ的な機能にはなりますが、毎日の消費カロリーを記録することもできるようになっています。 Wiifit Uでのトレーニング消費カロリーの記録はもちろん、「フィットメーター」という名前の専用歩数計を用意すれば(中古で1000円以下で買えると思います)、運動量から計算した1日の消費カロリーも記録することができます(あくまで、歩数計なので、自転車にのったりとか、重いものを運んだとか、歩くor走る以外の消費カロリーは記録できませんが)

何を買えばいいの?

WiiU本体とWiifit U のソフト一式そろえるための費用は、2018年3月現在だと、中古でそろえて約2万円です。

リアルトレーニングジムの相場はわからないですが、3~4か月分でしょうか?

しかも、ジムは毎月お金がかかりますが、Wiifit Uは初期投資だけなので、長いこと続ける決意があれば、値段的にはこちらの方がお得かと思います。

必要なもの

  • WiiU本体1万円~(中古)
    • Wiifit Uを使うだけでしたらベーシックもでるという一番安いモデルで大丈夫です。
    • ベーシックモデルの4倍(32Gb)のストレージを内蔵したモデルや、スーパーマリオスプラトゥーン等のゲームが最初から入っているモデルもあります。せっかくだからゲームもやりたいという方は、そちらも候補に入れてもよいかと思います。
    • ただ、中古で買う場合は同梱物の欠品に注意してください。特に、数千円程度で売られているものには、WiiU ゲームパッドがついていない場合があります*2
  • Wiiリモコンプラス 1つ2千円~(中古)
    • トレーニング種目によってはWiiリモコンプラスが2つ必要です。Wii U 本体にはWiiリモコンプラスは最大でも1つ*3しか同梱されておりません。また、BASICセットにはそもそも一つも付属していません。最低1つ、できれば2つ、用意しておきたいところです。
  • Wiifit Uソフト ダウンロード版が3000円
    • ディスクを読み込む必要のないダウンロード版が個人的にはおすすめです。特に、ほかのゲームもやりたい場合、トレーニングのために毎回ディスクを交換するのは少々面倒かもしれません。
  • バランスWiiボード 2000円弱(中古)
    • こちらも必須アイテムです。これがないと、Wiifit U を使うことは出来ないです。
  • フィットメーター
    • こちらはなくても全く問題ありません。ただ、持っていると、Wiifit U以外での運動記録が残せるので、なるべく歩いてみようかなって思ったり、今日はあまり歩いていなかったみたいだから少し多めにトレーニングしよう、などのモチベーションにつながるかもしれません。

Wii U ベーシックセット【メーカー生産終了】

Wii U ベーシックセット【メーカー生産終了】

Wiiリモコン プラス (シロ) (「Wiiリモコンジャケット」同梱)

Wiiリモコン プラス (シロ) (「Wiiリモコンジャケット」同梱)

バランスWiiボード (シロ)

バランスWiiボード (シロ)

Wii Fit U [オンラインコード]

Wii Fit U [オンラインコード]

フィットメーター(ミドリ)

フィットメーター(ミドリ)

あった方がいいもの

充電式単三電池と充電器(コントローラとバランスWiiボードで計8本使います) 予備も含めて12本以上はあると安心です。

充電式の電池といえばエネループが有名ですが、電池容量と値段のバランスを考えると、個人的には「EBL」というメーカーのものがおすすめです。同一メーカーの充電器もエネループと比べると安価で入手できます。

僕の使い方

僕は、足と腹筋のトレーニングを中心に、3つのトレーニングメニューを実践しています。

f:id:noranuk0:20180327142413j:plain

平日朝の出かけ前、筋トレメインで10分間トレーニング(セットメニュー3)。夜帰宅後、色々取り入れつつ40分(セットメニュー1)、こちらは晩御飯を食べた後に実践しています。土日祝日は午前中に有酸素運動を長めに取り入れて90分、晩御飯後に平日夜と同じメニューを40分(セットメニュー2)。

僕が実践しているセットメニュー

平日朝(約10分)

  • 太陽礼拝
  • ローイングスクワット30回
  • 身体水平支持60秒
  • ジャックナイフ20回

平日夜(約40分)

  • 太陽礼拝
  • ゲットアップ(左右20回)
  • ローイングスクワット30回
  • 身体水平支持30秒×3セット
  • 燃焼フープダンス 3分
  • ジョギング 距離(長め)
  • ヒップホップダンス(初級実践)
  • 燃焼ダンス(15分)

土日祝日(約90分)

  • ジョギング 距離(島一周)
  • ゲットアップ(左右20回)
  • 橋のポーズ(実践)
  • ローイングスクワット(30回)
  • 身体水平支持(60秒)×3セット
  • サイドランジ(左右15回)
  • ゲットアップ(左右20回)
  • ローイングスクワット(30回)
  • 身体水平支持(60秒)×3セット
  • 背骨を伸ばすポーズ(実践)
  • ながらジョギング(20分)
  • ヒップホップ初級(実践)
  • 燃焼ダンス(15分)

ずらずらと書きましたが、特におすすめなのが、「ゲットアップ」「身体水平支持」「ながらジョギング」「燃焼ダンス」の4つです。

ゲットアップは片腕を挙げた状態で「寝て」「起きて」を繰り返す運動です。「身体水平支持」は肘から先とつま先で体を支える運動です。この二つ、とにかく太もも、腹筋が鍛えられている感がすごいです。

また、他のトレーニングで身体をたくさん動かした後の燃焼ダンス15分は、疲れていても長時間身体全体を動かし続けることができ、発汗量もすごいです。

毎日トレーニングを続けていると、どこの筋肉をどれくらいの時間使ったかがグラフで確認できるようになります。 f:id:noranuk0:20180409102750j:plain 僕は、足と腹筋のトレーニングを中心に組んでいるため、グラフで見てもそれが反映されています*4

自分の鍛えたい部位を重点的に取り込んだトレーニングメニューを毎日こなせばそれがグラフにも表れてくるため、こういうのはなかなか続けられないという方でも、モチベーションにも繋がってくるんじゃないかと思います。

トレーニング種目が77種類もあるので、どれをやろうか迷ったら、まずは上にあげた4つの中からご自分がやりやすそうなものを取り入れつつ、いろいろな組み合わせを試してみるとよいかと思います。

まとめ

体重の変化、一日の運動量などをグラフで確認することができるのは、意外とモチベーションにつながります。

少しは運動しないとなー、と思われている同志の方、安くなったWii Uを利用して、少しづつでも始めてみてはいかがでしょうか?

今回の記事は以上となります。

お読みいただいてありがとうございました。

*1:一般的な言い方をすると42歳

*2:WiiUゲームパッドがないと何もできません

*3:欠品がない場合

*4:ほぼすべてのトレーニングで足は必ず使うため、足のトレーニング時間が一番長くなっています

【ニンテンドースイッチ】独断で決めた3本の名作、2本の駄作

どうも、のらぬこです。

発売後ずっと品薄状態だったニンテンドースイッチですが、ここ最近ようやく品薄状態から脱却してきたようで、量販店やネット通販サイト等でも適正価格で見かけることも増えてきました。

転売屋にマージン払うのが嫌で購入をためらっていた方も、ネット通販や家電量販店に足を運んでみると意外とすんなり購入できるかもしれません。

僕も去年の11月頃に定価で購入し、いくつかのゲームで遊んできました。そのなかには、超名作!と感じたものもあれば、流行ってるみたいだけど正直全然面白くなかったゲームもありました。

今回は、完全な僕の個人的主観で、ニンテンドースイッチのゲームで、買ってよかったゲーム、個人的には微妙だったゲームをそれぞれ紹介していきたいと思います。

買ってよかったゲーム編

ゼルダの伝説 ブレスオブワイルド

プレイ時間:230時間以上


ゼルダの伝説 ブレス オブ ザ ワイルド 1st トレーラー

ニンテンドースイッチが買えたらまず最初に買おうって決めていたゲームです。

3D系のアクションゲームにはほとんど手を出したことはなく、そもそもアクション系のゲームは苦手です。ですが、ネットの評判が非常に良かったことと、他に欲しいゲームがフルプライスのゲームでは特になかったので、とりあえずこれ買っとくか的な感じで購入しました。

ちなみに僕、任天堂が開発した3Dゲームというと、3頭身ぐらいの赤い帽子に青いズボンのおっさんが、英語で奇声を上げながら敵を踏みつぶしてる感じのゲームしか知りませんでした。 なので、これも大体そんな感じなんだろうなーと思ってました、ゲーム起動するまでは。

だから、ゲームを立ち上げて、短いオープニングデモを見て、主人公(リンク)が眠っていた場所から、外に出たときはとても衝撃を受けました。

そこには、洋ゲーっぽいリアルさこそないですが、どこまでも広がる美しい世界が広がっていました。

さらに、グラフィックは綺麗だけどそれ以外が・・・的なゲームは過去いくつも見てきましたが、このゲームは違いました。

グラフィックも、音楽も、ゲーム性も、どこをとっても最高でした。 f:id:noranuk0:20180324195019j:plain

自由に移動できるオープンワールド

歩く、走る、しゃがんでこっそり後ろから近づく、そして、泳いだり、壁をよじ登ったり、さらに、シナリオを進めればパラセール(パラシュートみたいなもの)での滑空や、野生の馬を捕まえて乗る、等の手段で、広大なフィールドを自由に移動できます。

f:id:noranuk0:20180321160004j:plain f:id:noranuk0:20180324195117j:plain

スタミナの概念があるので、延々と泳ぎ続けたり、高い崖をひたすら上り続けるといったことはできませんが、繋がっているように見えるけど、実は見えない壁が・・・的な場所はありません。段差はよじ登ればいいし、川で隔てられていたら泳げばいい。

地形も様々で、火山近くのとても暑い土地、雪山の山頂付近のとても寒い土地、森や砂漠、平原等、それぞれに違った特色、違った敵が出てくるため、目的を忘れて世界をひたすら探検しているだけでもとても楽しいです。

f:id:noranuk0:20180323134849j:plain

純化されているけど種類豊富なアクション

敵への攻撃手段も様々です。

たとえば、剣、弓(矢)で攻撃できるのはもちろん、盾で攻撃を弾き返したり、爆弾でダメージを与えたり、物を落としてダメージを与える等、色々な事ができます。

また、剣も弓矢も盾も、一度に何種類も持つことができて、簡単に切り替えることができるようになっています。

切り替え操作もさほど難しくありません。所定のボタンを押して装備パレットを出した後に、左右ボタンで使う装備を選択するだけです。

装備切り替えメニューを出している間は時間が止まってくれるので、落ち着いて操作することができ、慣れてくればとても快適です。

ジャンル的にはアクションゲームということで、シビアな操作が要求される場面もあります。ですが、メインシナリオクリアまでなら、アクションゲームが苦手な方でも、強い武器をどうにかして拾うとか、カバンいっぱいに回復料理を詰め込めこんでおけば真のエンディングまではしっかりと堪能できるようなバランスになっています。

ちなみに僕も、ラスボスは、ハートをほぼMAXまで強化して体力全快アイテムも5個くらい使って倒しました。

ただ、メインコンテンツはいいのですが、エキスパンションパックで追加される拡張コンテンツエリアはちょっと事情が違います。拡張コンテンツで追加されるエリアには、強い武器や回復アイテムなどの一切を持ち込むことができず、かつ、アクションが苦手な人向けの救済が存在しない(せめて休憩部屋でのセーブができれば・・・)ため、アクション苦手な方はクリアがとてもとても大変かもしれません。 エキスパンションパックは僕も購入したのですが、剣の試練(中位以降)がいまだクリアできず、未攻略のままとなってしまっております。

さて、話をもどしますが、バトル以外ではゲーム性とは関係のない無駄なアクション要素は極力省かれていたのも好印象でした。

例えば、川や湖で泳いでいる魚は捕まえて料理に使うことができるのですが、釣りという要素はありません。

じゃあどうするかというと、泳いで魚を追いかけて素手で捕まえるか、近くで爆弾を爆発させて、気絶して浮かんできたところをやっぱり素手で掴み取る、です。

僕は、釣り糸を垂らして十数秒待たされた後、魚が掛かったタイミングでボタンを押して(そのあとさらに釣り上げるためのアクションをこなして)魚を釣り上げる、というのをひたすら繰り返すアレがとても面倒で嫌いなので、こういう形にしてくれたのは有難かったです。

シンプルだけど深いシナリオと豊富なサブイベント

ゲームの最終目的は、復活した「魔獣ガノン」を倒すこと、です。

そして、その背後には、単に自由に冒険できるオープンワールドの世界、という以上に、長い歴史と壮大なシナリオが存在します。

序盤、チュートリアル+ゲームに最低限必要な要素の解放も兼ねたミッションはありますが、そのミッションが終われば完全に自由に冒険できます。 それも、完全にプレーヤーに丸投げではなく、一応、序盤に登場するおじいさんが、この後~~のほうに行けば、的なことを教えてくれるので、その通りにしてみると、なんとなく次に何をやってみるといいのかが少しづつ見えてくるようになっています。

世界中にいくつも建っている塔を目指したり、後述しますが世界中にいくつもある試練の祠と呼ばれるダンジョンを探したりしつつ少しづつ行動範囲を広げていけば、昔何が起こったのか、今何が起こっているのか、なんで自分はあそこで目覚めたのか、などが少しづつ分かるようになっています。本当に見事な演出です。

ガノン討伐を目指す、以外にも目標となることはたくさん用意されています。

例えば、ハート(HPの最大値)を増やしたり、がんばりゲージ(スタミナの最大値)を増やすには、攻略の証というものが必要になります。これは、世界中に100以上もある試練の祠(ギミック解除などの謎解きや、ガーディアンと呼ばれる中ボス的なモンスターを倒す等、様々な仕掛けが施された小さなダンジョンみたいなもの)を攻略することで手に入れることができるようになっています。

祠の近くに近づくと、センサーが教えてくれるのですが、マップに最初から表示されているわけではないので、探す楽しみ、クリアする楽しみの両方を満喫できます。

ほかにも、たくさんのサブクエストにチャレンジしたり、もてる装備アイテムの数を増やすための某アイテムを集めてみたり、出会ったモンスターや生き物を写真に撮ってコレクションしたり、目標として設定されたことはまだまだたくさんあります。

ちなみに、ひたすら同じことを何度もやってポイントをためると的な、いわゆる苦行クエみたいなものはありません(攻略必須ではありませんが、○○をいくつ集めて持ってきてほしいみたいなクエストはいくつかあります)。

本当に長いこと楽しめるゲームで、ニンテンドースイッチは持ってるけどゼルダは持ってない、という方も、これからニンテンドースイッチを買おうと思ってるけど、ゲームは何買おうか迷ってる方にもぜひともおすすめしたいと思います。

ヒューマンリソースマシーン(ダウンロード専用ソフト)

プレイ時間15時間以上


【Switch】ヒューマン・リソース・マシーン 紹介映像

このゲーム、タイトルだけ見ると、特に黒い会社系社会人エンジニアな方にはギギギって来るものがあるかもしれません。 内容は、簡易アセンブラ系プログラミングパズルゲームです。 何を言っているかよくわからないと思いますが、もう少しわかりやすく書くと、PUSH、POP、MOV、JNE、JBE、JMPなどの命令を使い、与えられたプログラムのお題を解いていくゲームです。 やっぱり分からないという方のためにスクリーンショットも貼っておきます。

f:id:noranuk0:20180321160044j:plain

このスクショをみて、ああなるほどね、と思ったソフトウェアエンジニア気質な方でしたら楽しめるかと思います。

逆に、これを見て、?マークが頭に3つくらい浮かんだだけの方には正直あまり向かないかもしれません。

特に、エンジニアの方で、自分であれこれ考えてアルゴリズムを書くのが好きな人には非常に面白いと思います。 ただ、ググって出てきたコードをコピペ改変してものを作っていくタイプのエンジニアさんでも楽しめるかはわかりませんが(嘲笑)。

ちなみにお題の内容は、INPUTにわたってくる数字列を指定された条件で加工、フィルタして、OUTPUTに放り込むような感じです。

序盤は簡単ですが、終盤は(命令セットが貧弱なせいもあり)意外と骨があります。

そして、たとえゲームでも、自分が書いたプログラムが意図したとおりに動いてくれたらやっぱりうれしいです。

なので、一度始めるとなかなかやめられないし、一度クリアしたステージも、もうちょいステップ数(配置する命令の数)を減らせないかとかあれこれ考えてしまいます。

なお、このゲームダウンロード専用ゲームとなっておりまして、パッケージ版は存在しません。もし、興味持たれた方は、ニンテンドースイッチ内のストアからダウンロード版を購入してください。

マリオラビッツキングダムバトル

プレイ時間60時間以上


マリオ+ラビッツ キングダムバトル 紹介映像

マリオ(とその仲間たち)、ラビッツ(ユービーアイソフトのキャラクターらしい、よく知らないけど)がを操作してステージをクリアしていくタクティクスSLGです。

ステージごとに、マリオ、ピーチなどの最大8人から3人を選んで出撃させます。

ユニットにはレベルの概念はないため、出撃させないと経験値がもらえずレベルアップできない、そしてますます出番がなくなるという残念なことにはなりません。

HPはワールドをクリアするごとに固定で増加していきます(後述のスキルポイントでも若干増やすことは可能です)。 また、攻撃力=武器の攻撃力は強い武器を入手することで強化していきます。こちらは、ステージクリアで自動的に入手する武器と、ミニゲーム的な要素で開放される武器の2種類があります。 どちらも、攻撃力は同じ(武器の見た目と追加効果が違うだけです)なので、コンプリートとかこだわらないのであればミニゲームスルーでも大丈夫と思います。

マップのギミック的要素や、特殊攻撃の数、敵キャラ、ボスキャラの数も、多すぎず、少なすぎず、単純すぎず、複雑すぎず、よいバランスだと思います。

また、マリオはジャンプで敵を踏んづけてダメージを与えられる、ルイージは移動力が大きいけどHPが少ない、ピーチは範囲回復ができるけど攻撃の手数が少ない、など、各キャラクター、とても分かりやすい個性も持っています。

難易度は比較的高めです。本編ステージは、パーフェクト(誰も死なずに指定ターン以内でクリア)を目指すとそれなりに難しいステージもありますが、とりあえずクリアするだけならそこまで難しくはありません(それでも、とりあえず出撃して、近くの敵から順番に撃破みたいな通り一遍の戦略では攻略は難しいと思います)。

半面、シナリオ攻略には必須ではない「チャレンジステージ」はかなり歯ごたえのあるステージも混ざっていて、難易度の高いステージを戦略を考えながらじっくり攻略するのが好きな方も楽しめると思います。

ステージごとに、相性のいいキャラクター、相性の悪いキャラクターがあるので、このステージ難しいなと思ったら、出撃キャラを変えてみると意外とすんなりクリアできたりします。

ステージ数もシナリオ、チャレンジ合わせて100くらいあるのでかなり長いこと楽しめると思います。

僕も、60時間ほど遊びましたが、未クリアのステージが10ほど残ってる感じで、もうしばらく遊べそうです。

微妙だったゲーム

スーパーマリオオデッセイ

プレイ時間 10時間以上

そこそこの広さで細部までしっかりと作られた箱庭的3Dフィールドを、あちこち駆け回って進めていく3Dアクション系のマリオです。

スーパーマリオ3Dワールド(WiiU)はかなり楽しめたのですが、こちらは全然でした。

フィールドをとりあえず進んでいき、ギミックっぽい場所に出くわしたら近くの敵に帽子を当てる。 敵の姿になったらその敵の特殊能力を使ってギミックを通過する。

の繰り返しです。

敵キャラクターに帽子をあてると対象キャラに変身してその敵キャラの能力が使えるようになる、というのも今作のウリの一つらしいですが、自由に変身して、というわけではなく、各ステージ、ここではこのキャラに変身してギミックを通過してください、と言わんばかりに、いかにもな場所で、新しい敵がウロウロしていて、その能力を使ってギミックを通過して進んでいく感じです。

正直、あまり面白みがありませんでした。

また、各ワールド、寄り道をせずにメインルートのみを辿ってクリアすると、パワームーンの数が足りず先に進めなくなります。

先に進むには、少し頑張って寄り道をして、目立たない場所、わかりづらい場所に隠されたパワームーンを探さないといけません。

基本、とりあえずエンディングまで進めて、追加要素や探索は気が向いたらちょこちょこやるようなスタイルなので、正直とても面倒くさかったです(Wii Uのマリオも、ボスステージに進むには要所に隠してあるジェムを一定数集めないとダメとかいう要素が随所に埋め込まれていて、正直かなりウザかった)

また、コインを集めると、着せ替え衣装が買えたりするのですが、おっさんのコスプレとか全然興味ないので、そこもモチベーションが上がりませんでした(まあ、マリオだし、ほかにやりようがないというのもわかるんですが)。

f:id:noranuk0:20180321160615j:plain

グラフィックは綺麗だし、せめてエンディングまでは見ようと思って、各種お助け機能、お助けキャラ等を利用して、エンディングまで残り3ワールドというあたりまではプレイしたのですが、結局そこでやめてしまいました。

スーパーマリオ オデッセイ - Switch

スーパーマリオ オデッセイ - Switch

ゼノブレイド

プレイ時間 10時間以上


ゼノブレイド2 Direct 2017.11.7 プレゼンテーション映像

ゼノブレイド(無印)が面白かったので、結構期待はしていたのですが、割と序盤で投げました。

ブログ記事やショッピングサイトなどでいろいろなレビューを見ることができますが、僕は中途半端なリアルと演出がダメでした。

ホムラ(PVで出てくる赤い髪の女の子)と合流して次の街にたどり着くくらいまでは楽しかったです。

でも、その街で、すごく萎える展開が待っておりました。

そこに到着後、とらわれた仲間を救出するために某施設に乗り込むシーンがあるのですが、施設内(室内)でも、時間は普通に経過し、朝になれば「おはようございます」、夜になれば「暗くなってきましたね」的なことを言ってくる仲間キャラ。待てコラ、屋内をずっと走り続けてたのにそのセリフはないだろう、と思いつつも,なるべく細かいことは気にしないことにしてプレイ続行。

しかし・・・

このゲーム、過去に行ったことのあるランドマーク(チェックポイント的なアレ)に、自由にワープできるシステムがあるのですが、仲間を救出し、あとは脱出するだけ、という状況だったので、施設の外にワープしてみたら普通にできました。でも、それでは脱出したことにはならないようで、イベントが進みません。

自分で歩き回って施設内の脱出ルートを探し、ギミックを解除して、製作者が意図した所定の出口に向かわないと話が進まないようです。

この中途半端な作りに嫌気がさして、モチベーションがなくなりました。

せめて、ドラクエでありがちな、「しかし、不思議な力でかき消された」の一文でも出てくればまだよかったのですが・・・・

Xenoblade2 (ゼノブレイド2) - Switch

Xenoblade2 (ゼノブレイド2) - Switch

Xenoblade2|オンラインコード版

Xenoblade2|オンラインコード版

最後に

微妙だったゲームに関しては、え?そこがいいんじゃないの?とか、そんなことで投げたの?とか、いやいや、もっとこういう良さがあって、とか色々と思われることがある方も大勢いらっしゃる思いますが(でなければ、あんなに売れないと思うし)、あくまでも、個人的な主観で書いていますと、一応申し添えておきます。

個人的には、ニンテンドースイッチ買ったら、とりあえずゼルダやって、遊びつくしてきたなーと思ったら、レビューや動画を見ながら、自分の好きなジャンルのゲームを選んでいけばいいんじゃないかと思っております。

半分以上がゼルダの紹介記事になってしまいましたが、最後までお読みいただいてありがとうございました。

この記事がどなたかのご参考になれば幸いです。

PHPでフレームワークを使わずURLのルーティングをいい感じにやる

どうものらぬこです。

PHPでWebアプリを書くなら、SlimとかCakePHP等のフレームワークを使うのがおそらく一般的なのかと思います。

ところが、既存の環境を間借りして、そこにアプリを置くような場合等、PHPのバージョンが古い等の問題により、なかなかそうもいかない場合もあります。

先日やったお仕事で、既存のシステムの一部リプレイスをしたかったのですが、PHPのバージョンが古すぎてフレームワークが導入できず、また、ヘッダ、フッタ、サイドバーなどはSmartyのtemplateで書かれているのですが、そいつらは流用したいということがありました。

そんなわけで、僕がとった方針は、ロジック部分はPHPべた書きでゴリゴリ書いて、テンプレートエンジンだけSmartyを使う形で開発しました。

さて、例として、以下のようなURLパターンに対して機能を実装していくとします。

/search
/categories
/catgegory/4
/prefecture/10/category/2
/city/2011/category/1
/railway/20/stations
....

これらのURLを適切に解釈し、それぞれの機能に対応した Controller を呼び出し、パラメータ値に対応したModelをロードしていい感じに加工した後、適切なViewTemplateを呼び出すような仕組みは、何らかのフレームワークを使えばたいてい備わっています。

しかし、べた書きで書くような場合には、これらを自前で実装する必要があります。

Webを漁ってみたのですが、正規表現使った力業や、'/' で explode した後でひたすら条件分岐で頑張るなど、再利用性もメンテナンス性もまるでなさそうな方法しか見つからなかったので、URLパターンをSlim frameworkの Router みたいな記法で書ける URLマッチングメソッドを自分で書いてみました。

<?php
function url_matcher(
    $inputUrl, $matchUrl, &$resultParams) {
    if (substr($inputUrl, -1) === '/') {
        $inputUrl = substr($inputUrl, 0, -1);
    }
    if (substr($matchUrl, -1) === '/') {
        $matchUrl = substr($matchUrl, -1);
    }

    $resultParams = array();
    $inputUrlParts = explode('/', $inputUrl);
    $matchUrlParts = explode('/', $matchUrl);
    if ($inputUrl === '' && $matchUrl === '') {
        return true;
    }

    if (strpos($inputUrl, '/') !== 0 ||
        strpos($matchUrl, '/') !== 0) {
        return false;
    }
    if (count($inputUrlParts) !== count($matchUrlParts)) {
        return false;
    }

    for ($index = 1; $index < count($inputUrlParts); $index++) {
        $path = 
            preg_replace(
                '/^\{([^}]+)\}$/', '\1', $matchUrlParts[$index], 1, $replacedCount);

        if ($replacedCount === 0) {
            if ($inputUrlParts[$index] === '' ||
                $inputUrlParts[$index] !== $matchUrlParts[$index]) {
                // path変数の重複によりエラー
                return false;
            }
        } else if ($replacedCount === 1) {
            if (isset($pathParams[$index]) ||
                $inputUrlParts[$index] === '') {
                return false;
            } else {
                $resultParams[$path] = $inputUrlParts[$index];
            }
        } else {
            // ルールに一致しない
            return false;
        }
    }
    return true;
}

使い方はこんな感じです。

<?php
function routing($method, $inputUrl) {
    $pathParams = null;
    if ($method === 'GET') {
        if (url_matcher($inputUrl, '/search'), $pathParams) {
            // 処理
        } else if (url_matcher($inputUrl, '/category/{categoryID}', $pathParams)) {
            $categoryId = $pathParams['categoryID'];
            // 処理
        } else if (url_matcher($inputUrl, '/prefecture/{prefectureID}/category/{categoryID}', $pathParams) {
            $prefectureId = $pathParams['prefectureID'];
            $categoryId = $pathParams['categoryID'];
            // 処理
        } else if {
            ....
        }
    } else if ($method === 'POST') {
        ....
    } else {
        // page not found処理
        exit;
    }
}

こちら、PHP5.2、PHP7.1で動作確認済です。

適用する環境がせめてPHP5.3?5.4?以上であれば、url_matcher に function オブジェクトを渡すようにする等、もう少しやりようはあったのですが、このソースを動かす環境が PHP5.2とかいうまことに残念な環境であったため、こんな形になっております。

余談ですが、url_matcher で urlパターンにマッチした時の処理ですが、僕は以下のようなController もどきのクラスを作っています。

<?php
abstract class Controller {
    protected $smarty = null;
    protected $mathod = null;
    protected $pathParams = null;
    protected $requestParams = null;
    public Controller($smarty, $method, $pathParams, $requestParams) {
        $this->smarty = $smarty;
        $this->method = $method;
        $this->pathParams = $pathParams;
        $this->requestParams = $requestParams;
    }
    abstract public function createModel();
    abstract public function getTemplateFileName();
}

class MyController extends Controller {
    public function createModel() {
        ....
        $this->smarty->assign(...);
        $this->smarty->assign(...);
    } 

    public function getTemplateFileName() {
        return $smarty->getTemplateDirectory().'/hogehoge.tpl';
    }
}

まず、一致したURLルール毎に、Controllerの適切なサブクラスを作成し、以下のようなコードを書けば、一応MVCっぽい感じに実装できると思います。

<?php
$controller->createModel();
$smarty->display($controller->getTemplateFileName());

パラメータのバリデーションチェック用のメソッドを用意したり、controller内の共通処理をserviceクラスを作ってそっちに移譲するなど、もう少しいろいろ頑張れば、ソースの見通しも良くなると思います。

ということで今回は、PHPで開発しているけど様々な事情でフレームワークが使えない方向け、簡易URLマッチング関数を実装してみたお話でした。

この記事が、どなたかのお役に立っていただければ幸いです。

使ってみた!Bluetoothでノイズキャンセリングな高性能ヘッドホン・イヤホン

どうも、のらぬこです。

以前、ニンテンドースイッチなどのbluetoothに対応していない機器を、Bluetooth接続対応のイヤホン等と、無線での接続を可能にする「Bluetoothオーディオトランスミッター」と呼ばれる製品の紹介記事を公開しました。

noranuk0.hatenablog.com

こちらの記事、大好評とはいかないまでも、比較的多くの方にお読みいただいたようで、僕もうれしい限りです。

さて、Bluetoothオーディオトランスミッターを使うには、当然ながらBluetooth対応のヘッドホン、イヤホン、スピーカーなどが必要になってきます。でも、前記事では、そちらについては全く触れていませんでした。

今回は、その辺の話を補ってみようという意味合いも込めて、僕が持っているBluetoothヘッドホン、イヤホンを紹介したいと思います。

f:id:noranuk0:20171112151705j:plain

イヤホン、ヘッドホンを使うシチュエーションは?

僕がヘッドホンを使うシチュエーション、利用シーンはだいたい下記のような感じです。家で使うことは滅多になく(夜遅くゲームするときに使うことが稀にあるくらい)、利用シーンは基本外出時です。

  • 利用シーン

    • 通勤中の電車内(割と轟音きつめな地下鉄区間も含む)
    • ひとりでの外食中や休憩中。
      • ファミレス、ファーストフード店などで、お昼ご飯や夜ご飯を食べてるときです
  • 利用用途

    • 音楽(ジャンルは、アニメ系、ゲームサントラ系などを中心に色々)鑑賞
    • ゲーム機と接続して(3DS/PSVita/Nintendo Switch)
    • 動画(主にアニメの録画番組)視聴

と、そこそこの騒音の中で様々な用途で使っている感じです。

今回紹介するヘッドホン、イヤホンは?

今回紹介するヘッドホン、イヤホンは、僕が持っている以下の5機種になります。

  • MDR-ZX750BN
  • MDR-ZX770BN
  • MDR-EX31BN
  • MDR-1000X
  • h.ear in Wireless(MDR-EX750BT)

オーディオ機器メーカーとしてはソニーが特別好きというわけでもないのですが、気が付いたらソニー製品ばっかりになってしまいました(笑) 基本的に外出時(しかも、現在利用中の地下鉄、地下鉄の中でもたぶんかなり煩いです)の利用メインなので、1機種を除いてすべてノイズキャンセリング機能搭載となっています。

一応、ほかにもSHUREの「SE215 Special Edition」というイヤホンを持っていますが、Bluetoothの便利さに慣れてしまい、現在はお部屋の隅っこで眠っております。

一つずつ紹介

取り敢えず手持ちのイヤホン、ヘッドホンについて、良いところ、おすすめポイントなどを交えながら一つづつ紹介してみたいと思います。

MDR-ZX750BN

  • 対応コーデック
    • SBC/aptX
  • 有線接続
    • 可能
  • NC性能
    • ファミレス、ちょっとザワザワした喫茶店、地上を走る電車ならほぼ問題ないレベル、地下鉄はきつい

はじめて買ったBluetoothノイズキャンセリング全部入りのヘッドホンです。比較的手の出しやすい価格で、Bluetooth+ノイズキャンセリングの両方がついたヘッドホンが欲しい!というお話でしたら、こちらのヘッドホンが一番のお薦めだと思います。

音質もまずまずで、低域から高域までちゃんと鳴らしてくれるし、こもった音でぼやーーっとした感じっという事もありません。

もちろん、同価格帯の有線ヘッドホンには流石に太刀打ちできませんが、機能を考えれば優秀なヘッドホンだと思います。

ただしこのヘッドホンの最大の問題は、すでに生産終了となっており、中古でしか出回っていないことです。中古であることがあまり気にならないのであれば、価格もそれほど高くないですし、今でも十分にお薦めできると思っています。

MDR-ZX770BN

  • 対応コーデック
    • SBC/aptX
  • 有線接続
    • 可能(3.5インチミニジャックの接続口の部分が少しくぼんでおり、付属ケーブル以外では奥までしっかりと刺さらないかもしれません)
  • NC性能
    • ファミレス、ちょっとザワザワした喫茶店、地上を走る電車なら十分な性能、地下鉄はややきつい。「MDR-ZX750BN」よりも性能はよいと思います。

型番的にも価格的にも、最初に紹介した「MDR-ZX750BN」をちょっとグレードアップさせた感じの後継品。ただ、個人的な主観になりますが、音質の観点では1〜2段階グレードダウンした廉価版的な印象でした。

特に顕著なのが高域のかすれです。 シンバルなどの高域楽器はシャリシャリしたノイズがのっかっているような音になってしまっています。

また、「MDR-ZX750BN」と比べて音が籠もった感じになっています。

全体的な音のバランスはよいのですが、高域のかすれに関しては特に意識しなくても普通に気づくレベルです。

ただし、ノイズキャンセリングの性能は前機種からそこそこ向上しています。音質よりもノイズキャンセリングの方に重点を置いた機種なのかも知れません。

これらの2機種で検討するのであれば、中古全然ありですっていう方であれば「MDR-ZX750BN」をおすすめしたいです。

「MDR-ZX770BN」は、音質よりもノイズキャンセリング性能重視で、高級機種を買うほどの予算はなけど(それでも1万円くらいはかかってしまうのですが)性能のよいノイズキャンセリングBluetooth接続のヘッドホンがほしいっていう方には向いているかも知れません。

MDR-EX31BN

  • 対応コーデック
    • SBC/aptX
  • 有線接続
    • 不可能(Bluetooth接続専用になります。充電が切れた場合は音を聞くことができなくなります)
  • NC性能
    • あるのとないのでは多少は違う程度。そんなに煩くない場所では効果は感じられますが、電車内などそれなりにうるさい場所ではあまり役に立たない気がします。

こちらの商品のみ中古で購入しました。必要性は全く無かったのですが、値段が安かったので衝動買いしてしまった感じです。

付属しているイヤホンの音質は、新品価格で考えると割と微妙ですが、中古5000円未満というお値段ならまずまずと思います。

こちらのイヤホンは、Bluetooth受信部とイヤホンを、3.5インチミニジャックで接続して使う構造になっています。

したがって、標準で付いているイヤホン以外に、普通のイヤホンもつなぐことが出来るようになっています(もちろん、ノイズキャンセリングは使えなくなります)。

なので、好きなイヤホンを刺して Bluetoothオーディオトランスミッター的な使い方をすることも可能です。

MDR-1000X

  • 対応コーデック
    • SBC/aptX/LDAC
  • 有線接続
  • NC性能
    • ファミレス、ちょっとザワザワした喫茶店、地上を走る電車では非常に快適です。さらに地下鉄等騒音がちょっと強めの環境でも申し分ない性能を発揮してくれます。ただ、地下鉄の中でもうるさい(と思う)京王線では、流石にちょっとボリューム盛らないと、動画音声などは聞きづらいこともあります。

こちらが僕が現在メインで使用しているヘッドホンになります。 というか、充電し忘れて使えない時以外は、基本これしか使ってませんw

性能については、値段が高いだけあって、音質、ノイズキャンセリング性能共に、他の機種を圧巻しています。

まず音質についてですが、低域から高域までアレンジされた感じもなくバランスよく比較的クリアに鳴らしてくれます。さらにノイズキャンセリング性能も抜群で、通常利用で不満に感じることはほぼないと思います。

BluetoothコーデックとしてSBC、aptXに加えて、「LDAC」というソニー独自規格のBluetoothコーデックが搭載されています。Xperiaシリーズなどの対応機器と接続すれば、ハイレゾ相当の高音質なサウンド再生も可能になっています。

一つ難点を挙げるとすれば、耳をすっぽり覆う形のヘッドホンなので、夏は蒸れることとくらいです。

予算があれば是非おすすめしたいヘッドホンです。

なお、2017年10月に発売された後継モデル(WH-1000XM2)では、ノイズキャンセリングの機能、性能が更に良くなっているようです。また、対応コーデックに「aptX HD」が追加されています。価格は少し上がってしまいますが、これから購入される方は、こちらも候補に入れてよいかと思います。

h.ear in Wireless(MDR-EX750BT)

  • 対応コーデック
    • SBC/aptX/LDAC
  • 有線接続
    • 可能(付属の専用ケーブル必須)
  • NC性能
    • NC非搭載

MDR 1000Xの充電を忘れてた時や、荷物が多くてヘッドホンは持ち歩きたくない時などに使う予備機という位置づけで、カバンには常に入っています。

上で紹介した機種と比べると、くっきりとした若干高域寄りの音作りがされています。もちろん安いヘッドホンにありがちな音ではなく、クリアで聞きやすい音質になっています。

さらに、とても軽量で、首に掛けたときに邪魔になることもありません。

ただし、ノイズキャンセリング機能は積んでおらず、遮音性も特にないため、周囲がそこそこうるさい環境でじっくり聴くようなシチュエーションには不向きかもしれません(普通のイヤホンと同じです)。

ちなみに、こちらもイヤホンもLDAC対応なので、MDR-1000Xと同様に、Xperia等の対応機器では、より高音質なサウンド再生も可能になっています。

ちなみに、2017年の10月に、ノイズキャンセリング搭載した後継的な位置づけのモデル「WI-1000X」も発売されました。ノイズキャンセリング機能付き、ハイレゾ対応ワイヤレスイヤホンという条件であれば、間違いなくおすすめ出来る機種だと思うのですが、価格が高いのが難点です。

今後、新しいのを買うとしたら?

ソニーばっかりで恐縮ですが、「WI-1000X」は結構惹かれております。コンパクトでかさばることもなく、カタログスペックを見る限りでは、ノイズキャンセリングも音質もかなり頑張っているように感じました。

もし、MDR-1000Xが壊れてしまったら、今のところは1番の購入候補になると思います。

ということで、今回は、僕が使ったことがあるワイヤレスイヤホン、ヘッドホンを幾つか紹介させていただきました。

この記事がどなたかのご参考になれば幸いです。

amazon echo plus / google home miniのレビュー記事を書きました。 割と辛口ですがご興味ある方いらっしゃいましたらこちらもどうぞってことで。 noranuk0.hatenablog.com

最後までお読みいただいてありがとうございました。

スマホ落下を未然に防ぐ。安くて丈夫、紐が切れないお薦めストラップ

どうものらぬこです。

最近は、携帯電話、スマートフォンにストラップをつけている方も、林檎端末勢力に押され*1、見かけることも減ってきた気がします。

ですが、ガラケー、アンドロイド端末使いの方に限れば、アクセサリーとして、手が滑って端末を落としそうになったときの保険として、ストラップをつけている方も結構いらっしゃるんではないかと思っております。

さて、僕もガラケー使ってた頃、多分15年とか20年前くらいからずっとストラップ使ってますが、これ、携帯に括り付ける紐の部分が極めて脆く、すぐ切れちゃうんですよね。。。

安いものでも500円くらいはしましたし、買って数週間で紐が切れて使えなくなってしまったりするととても残念な気持ちになってしまいました。

僕と同じように、紐が切れない、長持ちするストラップを探している方もいらっしゃるんじゃないかと思い、今回は、ストラップを「手が滑って端末を落としそうになったときの保険」として使っている方向けに、僕が10年くらい使い続けている、とても頑丈なストラップを紹介していきます。

それがこちらです。

Wiiリモコン専用 ストラップ (4色セット)

Wiiリモコン専用 ストラップ (4色セット)

機種変のときや、流石に薄汚れてきたと感じてきた時に交換はしていますが、それでも3年位は余裕で持つと思います。

こちら、かつて任天堂から発売されていたゲーム機「Wii」のコントローラ用のストラップなのですが、この紐がとても頑丈にできているのです。一応、Wiiのアクセサリーということになってはいますが、もちろんスマホでも使えます。

価格も1本100円〜200円程度で売られています。

ちなみにこのストラップ、Wiiの発売と同時に販売開始されたものなのですが、実は最初から丈夫だったわけではありません。

Wiiの発売後間もなく、海外で、Wiiリモコン(コントローラ)を振るような操作で遊んでいたところ、手が滑ってWiiリモコンが手から離れたと同時にストラップ紐が切れ、Wiiリモコンがテレビに激突しテレビが破損した、という事故がありました。 それを受け、任天堂が「多少乱暴に扱った程度では紐が切れない改良版」を用意した、という経緯があります。

japanese.engadget.com

つまり、現在出回っているWiiストラップは、「ストラップを手にはめた状態では多少振り回した程度では壊れない」程度の強度を持っている、と思っています。

ちなみに、紐の部分はこんな感じです。かなり太いです。 f:id:noranuk0:20170812112205j:plain

xperia Z5にとりつけてみたところです。ストラップの色が割りと派手なので、スマホやケースの色によっては合わせづらい可能性があるのが難点といえば難点。 f:id:noranuk0:20170812112259j:plain

丈夫でコスパもとても良いのですが、3つほど注意点があります。

まず1つ目は、ストラップが丈夫だから多少乱暴に扱っても平気というわけでは勿論ないということです。例えば、ストラップを腕に巻いてスマホを振り回したりすれば危ないのは勿論ですが、ストラップ紐が丈夫なため、スマホのストラップホールが壊れてしまうかもしれません。

2つ目は、ストラップ紐が太いのでストラップホールに通すのに結構苦労します。スマホのストラップホールサイズにも夜と思いますが、途中までねじ込んだ後、爪楊枝などを引っ掛けて紐を引っ張り出す、等のテクが必要なるかもしれません。

そして3つ目は、Wiiは既に過去の製品ということです。 このストラップもいつ市場から消え去ってしまっても不思議ではありません。かなり前から量販店で見かけることもなくなってしまいました。

値段も高くはないですし、丈夫なストラップがほしいなー、と思っていた方、お試しでご購入されてみても良いかと思います。

Wiiリモコン専用 ストラップ (4色セット)

Wiiリモコン専用 ストラップ (4色セット)

というわけで、今回の記事は以上となります。

この記事が、どなたかのお役に立っていただければ幸いです。

*1:極々一部の端末を覗いてiOS系端末にはストラップホールがないので

この怨み、地獄へ流します・・・ ~ iOSアプリ審査提出前のバリデーションフェーズで起きた悲劇を語る

どうも、のらぬこです。

完成したiOSバイス向けのアプリをAppStoreで配信するには、林檎神の理不尽な審査を通過しなければならない。

xcodeで成果物を提出するための操作を行うと、まずはプロジェクト関連ファイルのバリデーションが実行される。

この段階で、例えば「アイコンのサイズが規定のサイズでキチンと作られているか」とか「そもそもちゃんとビルド通るか」等が確認される。

今回は、このプロジェクトコード一式のバリデーションで発生したエラーではまった話をしようと思う。

f:id:noranuk0:20170712131641p:plain

ITMS-90056

This Bundle ****/TabPageViewController.framework is invalid Thr Info.plist file is missing the required key: CFBundleVersion

内部で利用している「TabPageViewController」というフレームワークのInfo.plistがおかしい?必須項目であるCFBundleVersionというキーが存在しないというエラーのようだ。

軽く調べてみたが結局原因は不明のまま。TabPageViewControllerの取り込み方法をcarthageからcocoaPodに変更することで回避できた。

ITMS-90328

Your package contains a file Main.storyboadc/TabPageView.nib with a name that contains invalid characters. Avoid using control characters in the file names.

なんとなく翻訳してみると、「ファイル名に使っちゃいけない文字を使っている」と書かれているような気がする。だが、対象のファイルは “TabPageView.nib” と、使っちゃいけない文字とか全くなさげ。

解決編

原因と修正方法を先に書いてしまう。

まず原因の方だが、このエラーは、ストーリーボードに配置されたViewContorollerのstoryboardIDに変な文字(改行とかタブとかファイル名としてあまりよろしくない文字)が紛れ込んでいた場合に表示される。

ちなみに、そのIDがプログラムから全く参照されていない場合、リリース用にcode validationを掛けるまで「警告」「エラー」等は何も表示されないし、シミュレータや実機などで開発版を動かす際も特に不具合は発生しない。

したがって、原因や修正方法に関する知見を持たないままプロジェクトが最終局面を迎えてしまうと、最後の最後になって初めてこのエラーを目にすることとなる*1

さて、次は修正方法だが、まずはプロジェクトに登録された全てのstoryboardファイル内を「」で検索してみるとよい。

もし、見つからなかった場合は、このブログ記事の内容を読んでも解決策は見つからないと思うので、早々に立ち去って他の記事を探すことをオススメする。

見つかった場合、見つかった箇所周辺のxmlタグを眺めつつ、対象のViewControllerなどを特定し、storyBoardIdなどに特殊文字が紛れ込んでいないかを確認してみようか。

ただしここで注意していただきたいのは、xcodeのプロパティービューを見ても特におかしなところは見当たらない(ように見える)かもしれないことだ。

だがしかし

storyboardId欄などにフォーカスし、ctrl+A → ctrl+Cなどで全選択コピーをして、そのまま他のエディターなどに貼り付けてみると、たしかに妙な文字(僕の場合は)が紛れ込んでいるのである。

最も、とりあえず場所が特定できれば後はどうということはない。問題箇所を適切に修正すれば、このエラーは消えるはず。

調査編

修正は一瞬だったが原因の特定にはそれなりに苦労したので、せっかくだから修正完了までの作業プロセスも書いておく。

まずは、nibファイルが何物なのかと思って調べてみた。検索結果を流し読みしただけなのだが、どうやら画面レイアウト系のファイルのようで、アーカイブ時にstoryboardから生成されるファイルらしい。

そういえばstoryboardファイルの中身ってxmlなので、とりあえずテキストとして開いて TabPageView で検索してみるが、対象の文字列は見つからず。

次に、エラーコードやエラーメッセージ等で検索してみるも、xcode再起動してもう一度試してみれば?的なアドバイスはどこかにあった。一応やってみたけど当然ダメ。

とりあえず、TabPageView.nibというファイルを探してみることにした。

といっても、xcodeがビルドする際に中間ファイル的なものをどこに作るのかわからなかったので、以下のコマンドで対象ファイルっぽいものを探してみる。

$ find / --name TabPageView.nib 2>/dev/null 
/private/var/folders/...../Base.lproj/Main.storyboardcTabPageView.nib

発見。

見つかったディレクトリに移動して lsしてみる。

$ ls -la
total 432
-rw-r--r--   1 * * 7 10 13:08 ?TabPageView.nib
drwxr-xr-x  40 * * 7 10 13:08 .
drwxr-xr-x   4 * * 7 10 13:08 ..
...
...

「何かおかしい」

確かに、ファイル名先頭に不穏な文字がくっついている。

$ cat <TAB>
^HTabPageView.nib

H」を文字コードに直すと「0x08」。

「お前、タブ文字か・・・・」

そこで、ふと気づき、Main.storyboardを一旦カラにし、素のViewControllerを一つ配置した状態で再Validationをかけてみる

言うまでもなく、当然起動直後にクラッシュするとは思うが、少なくともValidationは通った。

storyboardをもとに戻し、配置されているViewControllerを1つずつ削除しながら、どのViewControllerを削除したときにValidationが通らなくなるかを確認しつつ、問題となっているViewControllerを特定する。

特定ができれば、あとは対象のViewControllerがxmlのどこに配置されているかを確認し、xmlの対象箇所を凝視して何かおかしそうな場所がないかを確認すればいい。

原因が特定できればあとは修正するだけだ。

上の「解決編」で書かれたことを実践し、問題を修正。その後、再度バリデーションをかければ、少なくとこのエラーは消えているはずだ。

最後に

エラーの原因解りづらいわ、そもそもxcodeがエラー箇所を正しく指摘してくれないわ、「ファイル名にコントロールコードが含まれてるからダメ」とかエラーコードまで定義されてる割にバッグ実行の為のビルドは成功するし、シミュレータ実機デバッグ共に問題なし何だが?

UXのなんたるかについて、Microsoft VisualStudio開発チームあたりから一世紀ほど学んでから出直してきてほしい。

取り敢えず彼らには、不幸の手紙と藁人形と五寸釘10セット程を是非とも寄贈して差し上げたいと思った次第。

ワラ人形(藁人形)セット

ワラ人形(藁人形)セット

今回の記事は以上だ。

*1:僕のように