Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
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
730
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AV Foundation × Core MotionでiPhoneを“楽器”にしよう
afroscript
June 26, 2019
More Decks by afroscript
See All by afroscript
企業研究所のアウトリーチ専任者って何をしてる人?
afroscript
0
33
某助成金プロジェクト採択に向けて企業研究所のアウトリーチ専任者がやったこと
afroscript
0
160
3分でふり返る 2025年のOutreach Meetup
afroscript
0
82
研究紹介ショート動画「メルカリR4Dラボ チャンネル」を2年弱やってみた成果と学び
afroscript
1
430
企業の研究開発チームにおける アウトリーチの役割 を整理してみた
afroscript
0
310
メンバー目線から紐解く、 メルカリにおけるカルチャーが浸透し続ける6つの仕組み
afroscript
4
1.8k
技術広報の役割を定義してみた ~2023年夏~
afroscript
0
1.4k
技術広報の役割を定義してみた 2022年春
afroscript
4
7.9k
急拡大したエンジニア組織の「成長痛」に メルカリはどう立ち向かっているか?
afroscript
2
2.6k
Other Decks in Technology
See All in Technology
Data Hubグループ 紹介資料
sansan33
PRO
0
3.2k
サイバー捜査員研修(前半)
nomizone
1
1.9k
今こそ聞きたいソフトウェア設計 ドメイン駆動設計再入門
masuda220
PRO
17
7k
侵入は突然に 〜 IoTマルウェアと悪用される家庭の機器 ~ / When Intrusion Strikes: IoT Malware and the Abuse of Home Devices
nttcom
0
1.6k
【CEDEC2026】『ウマ娘 プリティーダービー』 英語版のキャラクターの方言や口調をローカライズするための創造的アプローチ
cygames
PRO
1
200
ホームラボ紹介
y_sera15
0
140
メルカリのグローバルアプリで挑んだ AlloyDB 運用と課題解決の実践記
hatappi
0
240
関東Kaggler会発表資料
takoi
1
200
Master Dataグループ紹介資料
sansan33
PRO
1
4.8k
Goでデータパイプラインを作ろう
sansantech
PRO
1
370
SmartHR Engineering Team Deck
smarthr
1
1.6k
【Google Cloud Next Tokyo'26】Gemini Enterprise と Oracle AI Database で実現する、業務データ活用を実現する AI エージェント実装
shisyu_gaku
0
230
Featured
See All Featured
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
310
Thoughts on Productivity
jonyablonski
76
5.3k
Skip the Path - Find Your Career Trail
mkilby
1
180
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
360
Designing Powerful Visuals for Engaging Learning
tmiket
1
480
The Limits of Empathy - UXLibs8
cassininazir
1
600
WCS-LA-2024
lcolladotor
0
790
Marketing to machines
jonoalderson
1
5.7k
How to train your dragon (web standard)
notwaldorf
97
6.7k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
480
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.5k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
590
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 持ってダンスとか?動きに合わせて音がなる的な。
ご静聴ありがとうございました 合宿来てね!:)
理想像 (本当はここまでやりたい) ※ビデオ入れる?