タグ

ブックマーク / shu223.hatenablog.com (25)

  • 【iOS 11】ARKitについてWWDCのラボで聞いてきたことのメモ - その後のその後

    iOS 11から追加された、AR機能を実装するためのフレームワーク「ARKit」についてWWDCのラボ(Appleのデベロッパに直接質問できるコーナー)で聞いたことのメモです。注目のフレームワークなので行列ができてましたが、丁寧に色々と教えてくれたので、忘れないうちに書いておこうと思います。 (WWDCセッションスライドより) 既存実装とどう共存させるか? 先日の記事にも書いたのですが、今働いている会社のアプリ「Fyuse」はスマホで3D的な写真を撮るアプリで、その撮影を補助するために、撮影対象の周囲に3Dの「ARガイド」を表示するという機能をAVFoundation+Metal+SceneKit+独自の画像処理ライブラリ(トラッキング等)で実装しました。 ARKitを使うとなると、要iOS 11以上、要A9以上のプロセッサという条件を満たす必要があるわけですが、当然2017年現在では多く

    【iOS 11】ARKitについてWWDCのラボで聞いてきたことのメモ - その後のその後
    tasanobu
    tasanobu 2017/06/09
  • 普通の机を昇降式スタンディングデスクにする(Loctek M1Bレビュー) - その後のその後

    なんと、、、GitHub経由で海外から製品レビューの依頼が来ました。Loctekというブランドの、普通の机の上に置いて昇降式のスタンディングデスクのようにできる製品です。 (イメージ図) 以前『【サンフランシスコ・エンジニア生活】弊社のオフィス紹介』という記事に書いたのですが、僕が働いているFyusion社のオフィスは電動のスタンディングデスク完備でして、 (赤丸で囲んだボタンで昇降する) これが非常に快適なので東京の自宅 *1 にも欲しい(※オフィスと自宅からのリモートワークが半々ぐらいの割合である)と思って検討したこともあるのですが、こういう電動式の自動昇降デスクは15万〜25万円が相場で、手が出しにくいなと思ってたのでした。 そんな折に表題の通り海外の会社から「GitHubであなたのことを知りました」「製品を送るからレビューしてくれない?」という打診があり *2、 I konw yo

    普通の机を昇降式スタンディングデスクにする(Loctek M1Bレビュー) - その後のその後
  • 【書評】初学者はもちろん、中級者にもオススメのAuto Layout解説書 - その後のその後

    著者の川邉さん(@jeffsuke)および出版社のリックテレコム様より『よくわかるAuto Layout - iOSレスポンシブデザインをマスター』をご献いただきました。 タイトルの通りAuto Layoutの解説書で、豊富な図やスクリーンショットを用いて、非常にわかりやすく書かれています。前書きによると、書の対象読者は 過去一度はXcodeを用いてiOSアプリをつくったことがあるが、Auto Layoutとサイズクラスを用いたAdaptive Layoutと言われると尻込みしてしまう開発者 とのこと。 なんかもうベストセラーになったりしてるらしく、 「よくわかるAuto Layout iOSレスポンシブデザインをマスター」発売しました。@tokorom 監修。今、モバイルプログラミング分野でベストセラーらしいです! https://t.co/wx7ZfuWVdf— Yusuke Ka

    【書評】初学者はもちろん、中級者にもオススメのAuto Layout解説書 - その後のその後
  • WWDC15のチケットは外れたけどサンフランシスコに行ってきたメモ - その後のその後

    タイトルの通り、今年はWWDCのチケットは残念ながら外れてしまったのですが、初参加した昨年を振り返ってみると セッションを(英語力と理解力と集中力の点で)リアルタイムで理解できない → セッション中にドキュメント等で勉強しようとする → セッション会場は(椅子間の距離が)狭いし、ネットも遅い → 1Fのネットコーナーに入り浸る という、日でもできる、というかむしろ日での方が快適にできる過ごし方をしていたわけで、良かったのは何よりもその「iOSエンジニアの祭典」的空気感なわけで、じゃあチケットなくても行く価値はあるかも、ということで航空券購入に踏み切りました。旅程は 6/6 〜 6/15 の 8泊10日。 やったこと ヨセミテ旅行 WWDCが始まる前の土日を利用して、iOSエンジニア4人でヨセミテへ行ってきました。シリコンバレーには何度か来ているものの、なかなか観光をする機会がなかったの

    WWDC15のチケットは外れたけどサンフランシスコに行ってきたメモ - その後のその後
    tasanobu
    tasanobu 2016/06/22
  • 【iOS 10】Speechフレームワークで音声認識 - 対応言語リスト付き - その後のその後

    iOS 10のドキュメントが公開された当日に書いた下記記事で、最も反響が大きかったのが音声認識APIでした。 http://d.hatena.ne.jp/shu223/20160614/1465862051 今回公開された SiriKit(Intents / IntentsUI)とは別のフレームワーク、Speech Framework として公開されたものです。リアルタイム音声にも、録音済み音声にも使えるようです。 今までも色々と音声認識を実現する手段はありましたが、やはりApple純正となると一気に命になってきます。*1 というわけで記事では Speech フレームワークを色々いじってみて、何ができるのかとか、どうやるのかとか見てみたいと思います。 なお、NDA期間中につき、スクショは自粛します。 Apple Developer Agreement まずはサンプルを動かしてみる "S

    【iOS 10】Speechフレームワークで音声認識 - 対応言語リスト付き - その後のその後
    tasanobu
    tasanobu 2016/06/16
  • 【iOS 10】API Diffsから見る iOS 10 の新機能 #WWDC2016 - その後のその後

    タイムラインでは「つまんねー」「Apple終わってる」「ジョブズがいればこんなことには・・・」という落胆の声をたくさん見かけましたが、"iOS 10.0 API Diffs" や "What's New in iOS" 等のプレリリースドキュメントを見ると今回も新しい機能が数多く追加されていて、個人的には非常にワクワクしております。 以下、気になったものを列挙していきます。 VoIP API / CallKit BONXというVoIP通話するプロダクトを手伝っている関係で、IP通話がどんな感じでできるようになるのか(サーバーは自分で用意するのかとか)、非常に気になります。 "Speakerbox: Using CallKit to create a VoIP app" という公式サンプルが公開されているので、後でコードを見てみようと思います。 SiriKit / Intents / Int

    【iOS 10】API Diffsから見る iOS 10 の新機能 #WWDC2016 - その後のその後
    tasanobu
    tasanobu 2016/06/14
  • ベルリンとロンドンのiOSカンファレンスで登壇した話 #UIKonf #iOSCon - その後のその後

    先週、ベルリンで開催された UIKonf と、ロンドンで開催された iOSCon の両カンファレンスにスピーカーとして参加してきました。 UIKonfの会場(登壇してるのはDaniel氏) まだロンドンにいまして、興奮冷めやらぬうちに記事に書いておきたいと思います。 UIKonf、iOSCon とは? どちらもiOSの開発者向けカンファレンスです。 同時期の開催で、同じEU内でのカンファレンスではありますが、それぞれ全く関連のない母体によって運営されています。*1 チケット代はそれぞれ、 UIKonf:€450+VAT19%(約66,000円) iOSCon:£650(約101,500円)+VAT(いくらか忘れた) と、日の感覚からいくとかなり高額です。 UIKonfの方は著名ブログ "RAYWENDERLICH" の "Top 10 iOS Conferences" でも紹介されていて

    ベルリンとロンドンのiOSカンファレンスで登壇した話 #UIKonf #iOSCon - その後のその後
    tasanobu
    tasanobu 2016/05/31
  • try! Swift振り返り/英語/国際カンファレンス #tryswiftconf - その後のその後

    国内初のiOSの国際カンファレンス「try! Swift」に全日程(3日間)参加してきました。技術的な振り返り(復習)は別記事でやるとして、ここでは感想的なものを。 (今回の主催者であり、Natasha The Robot / This Week in Swift の中の人、ナターシャさんと) 参加してよかったこと 自分のヤバさが認識できた 昨年まではほとんどの場合でObjective-Cを書き、たまーに見栄をはりたいとき(発表スライドに載せるちょっとしたコードとか、書籍のサンプルとか)にちょろっと付け焼き刃のSwiftを書いていた程度でした。 が、このカンファレンスのチケットを買ってからは意識してSwiftを書くようになり、最近やっと ObjC より Swift が気持ちよく書けるようになってきたところです *1。 で、カンファレンスに参加して、言語的な話にはほとんどついていけず、iO

    try! Swift振り返り/英語/国際カンファレンス #tryswiftconf - その後のその後
  • Objective-C で書いたアプリを Swift で書き換える5ステップ - その後のその後

    iBookでSwiftの解説出ましたが、言語自体にはそれほど興味がないので、実践的なところとして、手始めに「Objective-Cで書いた既存アプリをSwiftで書き換える」ところからやってみました。 アプリ全体、となると壮大なテーマになってしまうので、まずは AppDelegate だけ書き換えてみます。 なお、NDA 下にある Xcode 6 については書けないので、ビルド設定等については割愛しています。 1. 拡張子を .swift にする 例えば AppDelegate.m なら、AppDeleagate.swift にします。 2. import の書き換え ヘッダの import も移してきて、 #import <UIKit/UIKit.h> だったのを import UIKit にします。 3. クラス宣言の書き換え これもヘッダから移してきて *1 、 @interfac

    Objective-C で書いたアプリを Swift で書き換える5ステップ - その後のその後
  • Core Image の遷移エフェクトを使う - その後のその後

    Core Image のフィルタ (CIFilter) には、CICategoryTransition というカテゴリーがあり、次のような遷移(トランジション)エフェクトが用意されています。 (2015.10.5更新) CIBarsSwipeTransition CICopyMachineTransition CIDisintegrateWithMaskTransition CIDissolveTransition CIFlashTransition CIModTransition CISwipeTransition CIAccordionFoldTransition(iOS 8) CIPageCurlTransition(iOS 9) CIPageCurlWithShadowTransition(iOS 9) CIRippleTransition(iOS 9) 次のような一風変わった遷移

    Core Image の遷移エフェクトを使う - その後のその後
  • 【WatchKit】Apple Watch アプリのつくり方 & 全API解説 - その後のその後

    Apple Watch の SDK である『WatchKit』がリリースされてたので、さっそくさわってみました。 以下、サンプル実行方法、AppleWatchアプリの実装方法(所要時間1分、プログラミング不要!)、全クラス解説の順に書いていきます。 ※記事は、Appleによる公開ドキュメント(ログイン不要領域にあるもの)の範囲で書いています。 サンプル実行方法 何はともあれまずはサンプル実行。 iPhone6 シミュレータとかの並びに Apple Watch とかが来るのかなと思ってたので、一瞬サンプルをどう実行してよいのか面らいましたが、シミュレータメニューから [Hardware] > [External Displays] > [Apple Watch - 38mm] または [Apple Watch - 42mm] を選択 で、Apple Watch サイズの外部ディスプレイシ

    【WatchKit】Apple Watch アプリのつくり方 & 全API解説 - その後のその後
    tasanobu
    tasanobu 2014/11/19
    さすが。早いな〜
  • 【UIScrollView × Autolayout 問題】Appleエンジニア直伝のファイナルアンサー - その後のその後

    iPhone6,6Plus サポートとか LaunchScreen.xib とか Size Class とか考えると、もはや Autolayout は必須な感じになってきてます。 http://d.hatena.ne.jp/shu223/20141002/1412209257 で、Autolayout ✕ UIScrollView の例の問題(UIScrollView のサイズを superview との制約で動的に変えるときにその中身も動的に変えたい、ってやつ。こんな雑な説明でもハマったことある人にはわかっていただけるかと・・・)、Apple 公式でこんなドキュメントが出てますが、 Technical Note TN2154: UIScrollView And Autolayout "Mixed Approach" とかなんか筋が悪い感じだし、"Pure Auto Layout Appr

    【UIScrollView × Autolayout 問題】Appleエンジニア直伝のファイナルアンサー - その後のその後
  • Xcode 6 時代のマルチデバイス対応 〜Size Classとベクター画像〜 - その後のその後

    とあるお仕事で、iPad をサポート(= Universal 化)してほしいという要望があり、せっかくなので iPhone 6 / 6 Plus (4.7 / 5.5 inch スクリーン)もサポートしようってことで、新しい Xcode 6 の新しい仕組みである Size Class を使って複数画面対応を行ないました。あと、同じく Xcode 6 から Asset Catalog でベクター形式がサポートされるようになったので、こちらもトライしてみました。 で、そのときに学んだ諸々の断片的なメモです。勘違いもあるかもしれないのでその際は優しくご指摘いただけますと幸いです。 ※ちなみに Size Class やベクター形式画像の使用は iOS 8 以上縛りではありません。単に Xcode 6 の新機能というだけなので。 Size Class の前提知識をつける 「Size Classsとは

    Xcode 6 時代のマルチデバイス対応 〜Size Classとベクター画像〜 - その後のその後
  • iOSの動画処理について学べる日本語書籍のまとめ - その後のその後

    昨日『AV Foundationで120fpsスローモーション動画撮影を実装する』という記事を書いたのですが、動画まわりの処理もオーディオと同様、基的なところから一歩踏み込もうとすると途端に難しく、web上の情報も少ないと感じました。 この辺りはこれから勉強していきたいので、まずは情報収集、ということで、関連する技術情報が載っている書籍を列挙してみました。 動画処理といっても、撮影、編集、エフェクト、エンコード/デコード(書き出し/読み出し)etc...と多岐にわたりますが、とにかくそのあたりに関するものは何でもOK、ただしMPMoviePlayerControllerを使った動画再生と、UIImagePickerControllerを使った動画撮影については対象外 *1 としました。 ちなみに動画処理の観点からのオススメ順にならんでおります。 なお、いずれも自分が購入済みのものです。今

    iOSの動画処理について学べる日本語書籍のまとめ - その後のその後
    tasanobu
    tasanobu 2014/09/04
    日本語でAVFoundationを解説している書籍ってあんまりないみたい。洋書も視野に入れて探す必要があるかも
  • AV Foundationで120fpsスローモーション動画撮影を実装する - その後のその後

    iPhone5sだけのスペシャルな機能として、秒間120コマでの高速撮影 があり、標準カメラアプリではこれを利用した スローモーション動画撮影機能 が可能となっています。 これに類する機能をAVFoundationで実装できないかやってみたところ、うまくいったので、その方法を紹介します。 できたもの サンプルアプリをGitHubにアップしております。 GitHub - shu223/SlowMotionVideoRecorder: 120/240 fps SLO-MO video recorder using AVFoundation. Including convenient wrapper class. スクショ下部にあるように、 デフォルト / 60fps / 120fps を切り替えられるようになっています。 このアプリを使って撮ったものがこちら *1。 120fps Slow-M

    AV Foundationで120fpsスローモーション動画撮影を実装する - その後のその後
  • Audio Unit 再入門 - その後のその後

    Core Audio においてもっとも低レベルに位置する Audio Unit。リアルタイムで高度なオーディオ波形処理を行いたい場合や複雑なルーティングによるオーディオ処理を実現したい場合、これを使用する必要が出てきます。 が、このフレームワーク、個人的には使用頻度があまり高くない *1 ので、ひさびさに触ってみた際にとっつきにくさを感じました。 慣れてしまえば 全体的なコンセプトはシンプル なのですが、関数の引数がやたら多かったり、構造体の要素がやたら多かったり、慣れてないC言語APIだったりするので、久しぶりに触るとそのあたりが複雑に感じてしまうのかなと。 そんなわけで、次に久しぶりに Audio Unit をいじるときに、 そのあたりの「シンプルな全体感」と、「複雑に感じてしまう部分」を切り分けて見ることができるよう、メモっておきます。 基的な考え方 Audio Unit の基

    Audio Unit 再入門 - その後のその後
  • 【書評】中級者向けのUIKit解説本『UIKit徹底解説』 - その後のその後

    インプレスジャパン様より *1 献いただきました。 UIKit徹底解説 iOSユーザーインターフェイスの開発posted with amazlet at 14.06.21西方 夏子 インプレスジャパン 売り上げランキング: 8,651 Amazon.co.jpで詳細を見る 著者の西方夏子さんは、『上を目指すプログラマーのためのiPhoneアプリ開発テクニック iOS 7編』の Chapter02:「画面遷移」 Chapter03:「UIKit Dynamics」 等々を執筆されていた方で、僕も iOS 7 から入った「カスタム画面遷移」「インタラクティブ画面遷移」はこの書籍のサンプルで勉強させていただきました。*2 ブログの記事も書籍のように詳しくわかりやすく、いつも参考にさせていただいています。 で、今回の『UIKit徹底解説』ですが、中級者向けUIKit専門書とのこと。UIKitはi

    【書評】中級者向けのUIKit解説本『UIKit徹底解説』 - その後のその後
  • WWDC2014の旅 15泊17日を振り返る - その後のその後

    まだサンフランシスコにいるのですが、もう帰る以外の予定はないので、遅ればせながら「WWDC2014の旅」を振り返ってみます。 旅程 シリコンバレーを訪れるのは、昨年9月に すぐにまた戻るつもりで帰国 して以来、結局一度も戻らなかったので実に 9ヵ月ぶり。 せっかくなので他にもいろいろやっていこうということで、下記のようにWWDCの前後に6日間ずつの余裕を持たせた旅程にしました。 5/27 日発 6/2〜6/6 WWDC 6/12 日着 やったこと (WWDCに参加する以外には)特に具体的な予定がなかったのですが、知り合い繋がりでオフィスに遊びに行ったり、偶然街でバッタリ会ったりとかで、なんだかんだと充実した旅になりました。かまってくれた皆様どうもありがとうございました! WHILL HQ訪問 TechShopという、FabLabの超でっかい版みたいな場所があり、そこにWHILLが米国オ

    WWDC2014の旅 15泊17日を振り返る - その後のその後
    tasanobu
    tasanobu 2014/06/11
  • IB上でカスタムフォントを選択してプレビューできるXcodeプラグイン『MoarFonts』 - その後のその後

    iOSでカスタムフォントを使う場合、いままで(自分の場合)は UILabelやUIButtonのサブクラスを作成(内部でfontプロパティをカスタムフォントで差し替える) IB 上で UILabel オブジェクトを置いて、"Custom Class" に 1 で作成したクラスを指定 IB 上でフォントサイズ、色、レイアウトを決める ビルドして確認 ってなことをやってたわけですが、カスタムフォントは同じポイント数(pointSize)を指定しても全然サイズが違ったり、縦位置が全然違ったり、横に大きく広がったりということがザラで、 ビルドしてみるまでどう見えるかが未知数、という問題を抱えていました。「ちょっと大きかったなー」「もうちょい下か」「frame.size.width広げよう」みたいに調整する度にビルドするという。。 自分は比較的泥臭い作業耐性があるのでそんなもんだと思ってやってたわけ

    IB上でカスタムフォントを選択してプレビューできるXcodeプラグイン『MoarFonts』 - その後のその後
  • 家電を自由に操作するiOSアプリがつくれる『IRKit』 - その後のその後

    カヤック時代の恩師 maaash 氏 *1 が、IRKitという新デバイスを個人で開発(!)して、日よりAmazonで販売を開始しました。 IRKitposted with amazlet at 14.01.14maaash.jp Amazon.co.jpで詳細を見る このIRKitをつかうと、家電を操作するiOSアプリを好きなようにつくることができます。つまり、自分好みのリモコンアプリをつくれます。 対応している家電は・・・という制約はとくになくて、普通のリモコン(赤外線リモコン)で操作できるものなら何でもOKです。 しくみ IRKit(デバイス)が赤外線信号を送る機能を持っていて、IRKit SDK(を組み込んだアプリ)から「どういう信号を送るか」を制御する、という感じです。ざっくり。 学習リモコンやPlutoやiRemoconとどう違うの? 学習リモコンは、もともとあるリモコンの赤

    家電を自由に操作するiOSアプリがつくれる『IRKit』 - その後のその後