Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AV Foundation × Core MotionでiPhoneを“楽器”にしよう
Search
afroscript
June 26, 2019
Technology
0
700
AV Foundation × Core MotionでiPhoneを“楽器”にしよう
afroscript
June 26, 2019
Tweet
Share
More Decks by afroscript
See All by afroscript
研究紹介ショート動画「メルカリR4Dラボ チャンネル」を2年弱やってみた成果と学び
afroscript
1
130
企業の研究開発チームにおける アウトリーチの役割 を整理してみた
afroscript
0
240
メンバー目線から紐解く、 メルカリにおけるカルチャーが浸透し続ける6つの仕組み
afroscript
4
1.6k
技術広報の役割を定義してみた ~2023年夏~
afroscript
0
1.2k
技術広報の役割を定義してみた 2022年春
afroscript
4
7.6k
急拡大したエンジニア組織の「成長痛」に メルカリはどう立ち向かっているか?
afroscript
2
2.5k
Engineer Onboarding "打ち手"大全 ~Engineer Onboarding Meetupで出てきた手法まとめ~
afroscript
0
690
~研修の効果測定ってみなさんどうしてます?~ メルカリ新卒研修の 効果測定にもがいている話
afroscript
1
2.5k
頑張らないコミュニティ運営 ~苦なく楽しく継続させるための、適切な手抜き術~@PRLT
afroscript
4
1.5k
Other Decks in Technology
See All in Technology
なぜ使われないのか?──定量×定性で見極める本当のボトルネック
kakehashi
PRO
1
640
セキュリティAIエージェントの現在と未来 / PSS #2 Takumi Session
flatt_security
3
1.3k
事業部のプロジェクト進行と開発チームの改善の “時間軸" のすり合わせ
konifar
9
2.8k
AIにおける自由の追求
shujisado
2
460
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
9.9k
Product Engineer
resilire
0
130
Symfony AI in Action
el_stoffel
2
350
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
980
Agents IA : la nouvelle frontière des LLMs (Tech.Rocks Summit 2025)
glaforge
0
350
“決まらない”NSM設計への処方箋 〜ビットキーにおける現実的な指標デザイン事例〜 / A Prescription for "Stuck" NSM Design: Bitkey’s Practical Case Study
bitkey
PRO
1
300
知っていると得する!Movable Type 9 の新機能を徹底解説
masakah
0
200
mablでリグレッションテストをデイリー実行するまで #mablExperience
bengo4com
0
470
Featured
See All Featured
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.1k
Unsuck your backbone
ammeep
671
58k
Building Adaptive Systems
keathley
44
2.9k
Why Our Code Smells
bkeepers
PRO
340
57k
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
Visualization
eitanlees
150
16k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.8k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Balancing Empowerment & Direction
lara
5
780
The World Runs on Bad Software
bkeepers
PRO
72
12k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
960
Transcript
AV Foundation × Core Motion で iPhoneの楽器アプリを作ろう iPhoneを“楽器”にしよう 非エンジニアでもできるっ! 初心者枠
▪Name : 木下 雄策(30歳・福岡出身) @afroscript10 ▪Career : 九州大学大学院 宇宙の研究 2013年 ~ Leverages(Levtech→teratail)
2019年 ~ Mecari ▪Work : 日本発のグローバルテックカンパニーをつくる! → Mercari Engineering Gateway ▪Others : ・Gs'ACADEMY2期生/WebGLスクール3期生 ・Engineering Onboarding Meetup / Swift愛好会 / Kotlin愛好会の運営 ・Like:スノボ、バスケ、宇宙、 Three.js 自己紹介
Background なぜつくったか? ~僕とSwift~
Background ・ Swift 愛好会の運営: 立ち上げからもう 3 年半くらいやってるな〜
Background ・ Swift 愛好会の運営: 立ち上げからもう 3 年半くらいやってるな〜 ・ try! Swift
2019 : Organizer に加え、司会までやらせてもらったな〜
Background ・ Swift 愛好会の運営: 立ち上げからもう 3 年半くらいやってるな〜 ・ try! Swift
2019 : Organizer に加え、司会までやらせてもらったな〜 ・でも僕、実は Swift ほぼ書けないんだけどな〜
「いや、それまずくないか?」
と、ようやく思い始めてきた
というか、Swift書けたら、 もっとtry! Swiftも楽しいだろうな〜 というのが正直なところ。
あと、エンジニアでない僕が談義することで、 Swift愛好会の談義は、 どんなレベルの発表でもいいんですよ!っていうのを 改めて発信していきたい気持ちもある エンジニアじゃなくても発 表していいんだよ!
Ideation さて、何つくろう?
Ideation ・でも何つくろうかな〜、作りたいものないんだよな〜
Ideation ・でも何つくろうかな〜、作りたいものないんだよな〜 ・ Three.js とか WebAudio で 3D や音を扱ったものをつくるのが好きだけどな〜 →楽器アプリとか?
Ideation ・でも何つくろうかな〜、作りたいものないんだよな〜 ・ Three.js とか WebAudio で 3D や音を扱ったものをつくるのが好きだけどな〜 →楽器アプリとか?
・でもすでにいっぱいあるしな〜
そうだ! 「楽器アプリ」じゃなくて、 iPhoneを「楽器」そのものにしよう!
ということで作ってみた。
Demo
(当然&普通だけど) ボタンを押すと音が出る 左右に傾くとビュー ンって 音が出る 上下に降ると スクラッチ音
How to develop ※初心者目線での解説になります
How to develop 再入門する
How to develop: 再入門する ・ GW を使って、まずは 1 冊読んだ ・
655 ページ。。。。心折れる。。。
How to develop: 再入門する ・ GW を使って、まずは 1 冊読んだ ・
655 ページ。。。。心折れる。。。 ・ iPhone って機能めちゃくちゃ多い!! なので、全部読む必要ないじゃん
How to develop: 再入門する ・ GW を使って、まずは 1 冊読んだ ・
655 ページ。。。。心折れる。。。 ・ iPhone って機能めちゃくちゃ多い!! なので、全部読む必要ないじゃん → Swift の文法だけちゃんと読んで、 あとはこんな機能を使えるんだ〜 くらいで流し読みすることにした
How to develop: 再入門する ・ GW を使って、まずは 1 冊読んだ ・
655 ページ。。。。心折れる。。。 ・ iPhone って機能めちゃくちゃ多い!! なので、全部読む必要ないじゃん → Swift の文法だけちゃんと読んで、 あとはこんな機能を使えるんだ〜 くらいで流し読みすることにした
How to develop 音を鳴らす
How to develop: 音を鳴らす ・ Xcode に音源を取り込む(ドラッグ & ドロップで OK
) ・音を扱うフレームワーク「 AV Foundation 」を import ・ AVAudioPlayer のインスタンスを用意 ・音源ファイル再生の下準備 ・音源再生 ※参考記事: https://picolica.com/2017/02/25/swift3-play-sound/
How to develop: 音を鳴らす ・ Xcode に音源を取り込む(ドラッグ & ドロップで OK
) ※参考記事: https://picolica.com/2017/02/25/swift3-play-sound/
How to develop: 音を鳴らす ・音を扱うフレームワーク「 AV Foundation 」を import ※参考記事:
https://picolica.com/2017/02/25/swift3-play-sound/
How to develop: 音を鳴らす ・ AVAudioPlayer のインスタンスを用意 ※参考記事: https://picolica.com/2017/02/25/swift3-play-sound/
How to develop: 音を鳴らす ・音源ファイル再生の下準備はこんな感じ ※参考記事: https://picolica.com/2017/02/25/swift3-play-sound/
How to develop: 音を鳴らす ・音声ファイルのパスを生成 ※参考記事: https://picolica.com/2017/02/25/swift3-play-sound/
How to develop: 音を鳴らす ・さっき用意した audioPlayer のインスタンスを生成 ※参考記事: https://picolica.com/2017/02/25/swift3-play-sound/
How to develop: 音を鳴らす ・音源をいつでも再生できるように準備 ※参考記事: https://picolica.com/2017/02/25/swift3-play-sound/
How to develop: 音を鳴らす ・音源を再生する ※参考記事: https://picolica.com/2017/02/25/swift3-play-sound/
How to develop: 音を鳴らす ・再生開始位置を 0 秒にして、 ※参考記事: https://picolica.com/2017/02/25/swift3-play-sound/
How to develop: 音を鳴らす ・再生 ※参考記事: https://picolica.com/2017/02/25/swift3-play-sound/
How to develop: 音を鳴らす ・あとは、 Button 押したときなどで関数呼べば OK ※参考記事: https://picolica.com/2017/02/25/swift3-play-sound/
How to develop モーションセンサーを使う
How to develop: モーションセンサーを使う ・フレームワーク「 Core Motion 」を import ・モーションマネージャーを作成
・モーションセンサーをスタート
How to develop: モーションセンサーを使う ・フレームワーク「 Core Motion 」を import ※書籍の通りに書いただけ
How to develop: モーションセンサーを使う ・モーションマネージャーを作成 ※書籍の通りに書いただけ
How to develop: モーションセンサーを使う ・モーションセンサーをスタート(ここよく分かんない笑。) ※書籍の通りに書いただけ
How to develop: モーションセンサーを使う ・ motionAnimation 関数内で、 音源再生関数を実行する ・回転角速度や加速度が一定数時を 越えたときに音源再生するようにする
・そのラインは何度も調整 ※書籍の通りに書いただけ
How to develop: その他のTips ・ボタン素材とかどうすんねん → これ便利だった https://www.draw.io/ ・楽器音は? → ここからお借りしました
https://maoudamashii.jokersounds.com/core.cgi?page=1&field= 効果音素材 <> 楽器 ・効果音は? → ここからお借りしました https://soundeffect-lab.info/sound/anime/
コードはこちら↓ http://afroscript.hatenablog.jp/entry/2019/06/26/201453
Next Step ・モーション増やしたい ・モーションの on/off できるようにしたい ・ボタンとモーションでそれぞれ好きに音を設定できるようにしたい ・録音して、音重ねられるようにしたい ・パフォーマンスの 1
つの分野になるとおもしろそうだなー → iPhone 持ってダンスとか?動きに合わせて音がなる的な。
ご静聴ありがとうございました 合宿来てね!:)
理想像 (本当はここまでやりたい) ※ビデオ入れる?