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
音声ガイダンスを導入した話
Search
Toshihiro Morimoto
April 26, 2016
Technology
3.9k
0
Share
音声ガイダンスを導入した話
Akerun & BONX Tech Talk Supported by さくらインターネット
~IoTスタートアップを支えるエンジニアの夕べ~
Toshihiro Morimoto
April 26, 2016
More Decks by Toshihiro Morimoto
See All by Toshihiro Morimoto
Xcode8 で開発はどうかわったのか
dealforest
10
6.4k
魅せるデバッグ技術
dealforest
4
1.6k
LLDB の世界からみた Swift
dealforest
4
5.4k
Xcode で快適なデバッグライフを追い求める
dealforest
29
24k
Intrducing debug in WWDC2016
dealforest
3
810
swift build と Xcode での Build の違い
dealforest
3
2.1k
RIP Xcode Plugin 🙏
dealforest
0
4.8k
Introducing Xcode Editor Extension
dealforest
2
4.6k
Introducing Anglerfish
dealforest
2
3.5k
Other Decks in Technology
See All in Technology
Hacobu Tech Deck
hacobu
PRO
0
130
今年注目する!データ分析プラットフォームでのAIの活用
nayuts
0
160
AI駆動1on1〜AIに自分を育ててもらう〜
yoshiakiyasuda
0
150
Arcana: Production-Ready RAG in Elixir @ ElixirConf EU 2026
georgeguimaraes
0
110
AIが盛んな時代に 技術記事を書き始めて起きた私の中での小さな変化
peintangos
0
150
ハーネスエンジニアリングをやりすぎた話 ~そのハーネスは解体された~
gotalab555
5
1.8k
Percolatorを廃止し、マルチ検索サービスへ刷新した話 / Search Engineering Tech Talk 2026 Spring
visional_engineering_and_design
0
140
Class.new is all you need
riseshia
1
160
AWS Transform CustomでIaCコードを自由自在に変換しよう
duelist2020jp
0
130
独断と偏見で試してみる、 シングル or マルチエージェント どっちがいいの?
shichijoyuhi
1
130
データを"持てない"環境でのアノテーション基盤設計
sansantech
PRO
1
140
社内エンジニア勉強会の醍醐味と苦しみ/tamadev
nishiuma
0
240
Featured
See All Featured
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
120
Git: the NoSQL Database
bkeepers
PRO
432
67k
RailsConf 2023
tenderlove
30
1.4k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.4k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
340
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
170
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.7k
KATA
mclloyd
PRO
35
15k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
780
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
150
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.4k
For a Future-Friendly Web
brad_frost
183
10k
Transcript
ԻΨΠμϯεΛಋೖͨ͠ Akerun & BONX Tech Talk Supported by ͘͞ΒΠϯλʔωοτ ʙIoTελʔτΞοϓΛࢧ͑ΔΤϯδχΞͷ༦ʙ
@dealforest Toshihiro Morimoto #anbtechtalk 2016/04/26
ࣗݾհ
Agenda • ԻΨΠμϯεಋೖ/ܦҢ • ಡΈ্͛ػೳͷ͍ํ • ϋϚϦͲ͜Ζ
ԻΨΠμϯεಋೖ/ܦҢ
ԻΨΠμϯεΛಋೖ͢ΔҎલ SE Λ໐Β͍ͯ͠·ͨ͠
͜ΕͰ͍͚Δͱࢥ͍ͬͯͨ࣌ظ͕ ͨͪʹ͋Γ·ͨ͠
ͱ͜Ζ͕ݱ࣮ݫ͔ͬͨ͠
ςΟϩʔϯ㽈
( ୭͔͕ݍ֎ʹͳͬͨ )
ςΟϩʔϯ㽈
( ୭͔͕ ೖࣨ / ୀࣨ ͨ͠ )
;Δͬ;ʙ㽈
( σόΠεͱ BLE ଓཱ͕֬ͨ͠ )
τΡϧʔϯ㽈
( σόΠεͱ BLE ଓ͕அͨ͠ )
…
SE ͚ͩͩͱதͷਓͰ͑͞ Կ͕ى͍ͬͯ͜Δ͔ѲͰ͖ͳ͔ͬͨ
݁ہɺτʔΫը໘Λݟͳ͍ͱ Ͳ͏͍͏ঢ়گ͔ Ѳ͢Δ͜ͱ͕Ͱ͖ͳ͔ͬͨ
τʔΫը໘
ͯ͞ʂʂʂ
ઇࢁͰϘʔυΛ͍ͯ͠Δ࣌Λ ૾ͯ͠Έ·͠ΐ͏
ઇࢁ͍͜͞ʔʔʔʔ \(^o^)/
͋ΕɺٸʹԠ͕ͳ͘ͳͬͨʁ
ͪͬ…
άϩʔϒ֎ͯ͠
ܞଳऔΓग़ͯ͠
ϩοΫղআͯ͠
τʔΫը໘Λ֬ೝ
ঢ়گΛѲ͍͚ͨͩ͠ͳͷʹ ͜ΕΛ܁Γฦ͞ͳ͍ͱ͍͚ͳ͍
͜Ε͕ʑ͋Δͱ…
ͭΒ͔͞͠ͳ͍
ԻΨΠμϯεΛಋೖ͢Δ͜ͱͰ ͋Δఔվળ͞Ε·ͨ͠
͜Ε͔ΒԻΨΠμϯεΛ ࣮ͨ͠ݟΛڞ༗͍͖ͯ͠·͢
Ͱ࣮ࡍʹ BONX Ͱ ͲͷΑ͏ͳγʔϯʹྲྀΕΔͷ͔ Έ͍͖ͯ·͠ΐ͏
ࣗͷঢ়ଶΛಡΈ্͛Δ • ϛϡʔτʹΓସ͑ͨ • ిڥ͕ѱ͘ͳͬͨ • ࣗಈ࠶ೖࣨॲཧΛߦ͍ͬͯΔ • (ϧʔϜʹೖୀࣨͨ͠)
ଞϝϯόʔͷঢ়ଶΛಡΈ্͛Δ • ϧʔϜʹೖୀࣨͨ͠ • ϛϡʔτʹΓସ͑ͨ • ిڥ͕ѱ͘ͳͬͨ
ಡΈ্͛ػೳͷ͍ํ
ಡΈ্͛ػೳͷ͍ํ import AVFoundation let text = “iOS ΤϯδχΞืूதʂʂ” let utterance
= AVSpeechUtterance(string: text) AVSpeechSynthesizer().speakUtterance(utterance)
؆୯Ͱ͢Ͷ
ઃఆ͢Δͱ͖ Analytics ͷ Event Λ ઃఆ͢Δͷͱಉ͡Α͏ͳײ͡Ͱ͢
ઃܭϒϨΠΧʔʹͳΓ͍͢ͷͰ Ͳ͜Ͱ໐Β͔͢ΛܾΊΔ࣌ʹ Ұॹʹ͋ͬͨ͠ํ͕͍͍Ͱ͢
ϋϚϦͲ͜Ζ
ϋϚϦͲ͜Ζ • iOS ͷόʔδϣϯ, ݴޠઃఆʹΑͬͯ࠶ੜ ͕ҟͳΔ • ݴޠઃఆʹΑͬͯ࠶ੜ͞Εͳ͍ςΩετ ͕͋Δ •
μοΩϯά͕ൃੜ͢Δ • SpringBoard ͰΫϥογϡ͢Δͱ͖͕͋Δ
iOS ͷόʔδϣϯ, ݴޠઃఆʹΑͬͯ࠶ੜ͕ҟͳΔ AVSpeechUtteranceDefaultSpeechRate Λઃఆ͍ͯͯ͠ iOS ͷόʔδϣϯɺͷݴޠઃఆʹΑͬͯ ςΩετͷಡΈ্͕͛ҟͳΔ utterance.rate =
AVSpeechUtteranceDefaultSpeechRate ͜Εͩͱ iOS8 Ͱ࠶ੜͨ͠߹ʹ࠶ੜ͕͍ʂ
AVSpeechUtteranceDefaultSpeechRate ͷͲͷڥͰಉ͡ ํ͕ͳ͍ͷͰόʔδϣϯɺݴޠຖͰ࠶ੜΛม͍͑ͯΔ [iOS9] utterance.rate = AVSpeechUtteranceDefaultSpeechRate [iOS8 - ຊޠ]
utterance.rate = AVSpeechUtteranceDefaultSpeechRate * 0.3 [iOS8 - ӳޠ] utterance.rate = AVSpeechUtteranceDefaultSpeechRate * 0.5 iOS ͷόʔδϣϯ, ݴޠઃఆʹΑͬͯ࠶ੜ͕ҟͳΔ
ݴޠઃఆʹΑͬͯ࠶ੜ͞Εͳ͍ςΩετ͕͋Δ • BONX Ͱຊޠ / ӳޠΛαϙʔτ • ݴޠઃఆ͕ӳޠͩͱϚϧνόΠτͷจࣈྻΛ͢ͱɹɹɹ ԿಡΈ্͛ΒΕͳ͍ ASCII
Ҏ֎ͷจࣈྻؚ͕·ΕΔ߹ someone Ͱସ͠ ͍ͯΔ • ಡΈ্͛ݴޠͷ ͔ͳ Λࣄલʹͱ͓͔ͬͯͳ͍ͱਖ਼֬ʹ ಡΈ্͛Δ͜ͱෆՄೳ ࣈΛͲͷΑ͏ʹಡΈ্͛ΒΕΔ͔ Apple ͞Μ࣍ୈ
μοΩϯά͕ൃੜ͢Δ μοΩϯάͱ… ԻָΛௌ͍ͯΔ࣌ʹ push ௨͕དྷͨࡍʹ Ұఆ࣌ؒԻָͷϘϦϡʔϜ͕খ͘͞ͳΔ͜ͱ
μοΩϯά͕ൃੜ͢Δ • AVAudioPlayer ͰԿ͔Λ࠶ੜ͍ͯ͠Δ߹ʹɺಡΈ্͛ػೳ Λ͏ͱࣗಈతʹ ducking ͞ΕΔ (ڧ੍) • ղܾࡦͱͯ͠ಡΈ্͛ػೳΛ͏ࡍʹ
0.1 ඵશͯͷ AVAudioPlayer ͷ࠶ੜΛࢭΊΔ͜ͱͰճආͰ͖Δ
SpringBoard ͰΫϥογϡ͢Δͱ͖͕͋Δ AXSpeechManager ͷॳظԽͰΫϥογϡ͢Δ ݁ہݪҼ͕Θ͔ΒͣΛग़ՙঢ়ଶʹɹ ͤΫϥογϡ͠ͳ͘ͳͬͨ Crash in CFStringConvertNSStringEncodingToEncoding https://forums.developer.apple.com/message/17681
ઃఆ → Ұൠ → ΞΫηγϏϦςΟ → VoiceOver → εϐʔν DL
͢Εߴ࣭ͷԻΛ໐Β͢͜ͱͰ͖·͢ ͓·͚
·ͱΊ ͋·Γࣄྫ͕ͳ͍ͷͰ ϋϚΓॴͦΕͳΓʹ͋Γ·ͨ͠
·ͱΊ ͨͩ BONX Ͱಋೖͨ͜͠ͱʹΑΓ ؒҧ͍ͳ͘UXվળ͞Ε·ͨ͠
·ͱΊ IoT σόΠεͱ૬ੑ͕ྑ͍ͱࢥ͏ͷͰ ಉ͡Α͏ͳΈͷॿ͚ͱͳΕ͍Ͱ͢
We are Hiring!!
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠