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
Speech framework tips
Search
Ryo Tsuzukihashi
July 10, 2020
Programming
1
2.7k
Speech framework tips
speech framework tips
Ryo Tsuzukihashi
July 10, 2020
Tweet
Share
More Decks by Ryo Tsuzukihashi
See All by Ryo Tsuzukihashi
SwiftUI Transaction を徹底活用!ZOZOTOWN UI開発での活用事例
tsuzuki817
1
1.1k
レビューを増やしつつ 高評価維持するテクニック
tsuzuki817
3
1.1k
二次元コードを読み取りやすくするために 画面を強制的に明るくするのは もうやめにしませんか?👀
tsuzuki817
0
430
動画だけじゃない!iOS 15のピクチャ・イン・ピクチャを使って好きなUIを表示させよう!
tsuzuki817
3
4.9k
iOS 16からのロック画面Widget争奪戦に備える
tsuzuki817
2
1.1k
Complications and widgets: Reloadedの要約
tsuzuki817
1
1.2k
Build complication in SwiftUI の要約
tsuzuki817
0
710
SwiftUI で Neumorphism!!!
tsuzuki817
2
1.9k
SwiftUIで作りながら学ぶアニメーション インジケーター編
tsuzuki817
0
610
Other Decks in Programming
See All in Programming
Blazing Fast UI Development with Compose Hot Reload (droidcon New York 2025)
zsmb
1
190
アンドパッドの Go 勉強会「 gopher 会」とその内容の紹介
andpad
0
260
ReadMoreTextView
fornewid
1
470
Julia という言語について (FP in Julia « SIDE: F ») for 関数型まつり2025
antimon2
3
980
ruby.wasmで多人数リアルタイム通信ゲームを作ろう
lnit
2
250
生成AIコーディングとの向き合い方、AIと共創するという考え方 / How to deal with generative AI coding and the concept of co-creating with AI
seike460
PRO
1
330
Composerが「依存解決」のためにどんな工夫をしているか #phpcon
o0h
PRO
1
210
関数型まつり2025登壇資料「関数プログラミングと再帰」
taisontsukada
2
850
Result型で“失敗”を型にするPHPコードの書き方
kajitack
4
300
XP, Testing and ninja testing
m_seki
3
180
Is Xcode slowly dying out in 2025?
uetyo
1
190
Java on Azure で LangGraph!
kohei3110
0
170
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
351
20k
How to train your dragon (web standard)
notwaldorf
92
6.1k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
670
The Straight Up "How To Draw Better" Workshop
denniskardys
233
140k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
The Cost Of JavaScript in 2023
addyosmani
51
8.4k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
The Language of Interfaces
destraynor
158
25k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Transcript
5TV[VLJIBTIJ3ZP !UTV[VLJ 4QFFDIGSBNFXPSLUJQT <0OMJOF>QPUBUPUJQTJ04"OESPJE։ൃ5JQTڞ༗ձ
ࣗݾհ w!UTV[VLJ w:BIPP+"1"/ 1BZ1BZϑϦϚJ04ΞϓϦ։ൃ wݸਓΞϓϦ։ൃͱࣸਅ wݱࡏݸͷΞϓϦ։ൃத✌ bТ ✌
4QFFDIGSBNFXPSLͱ w"QQMF wԻೝࣝ ϦΞϧλΠϜɺԻͲͪΒରԠ wJ04 J1BE04 NBD04ରԠ 4XJGU6*Λ͏ͱಉ࣌ʹશ෦࡞Εͯඒຯ͍͠
ϦΫΤετͷํ๏ αʔόʔ ΦϑϥΠϯ J04Ҏ߱ ੑೳ #FTU (PPE
ϦΫΤετͷํ๏ αʔόʔ ΦϑϥΠϯ J04Ҏ߱ ੑೳ #FTU (PPE "1*੍ݶ ͋Γ ͳ͠
ϦΫΤετͷํ๏ αʔόʔ ΦϑϥΠϯ J04Ҏ߱ ੑೳ #FTU (PPE "1*੍ݶ ͋Γ ͳ͠
ରԠݴޠ Ҏ্ Ҏ্
ϦΫΤετͷํ๏ αʔόʔ ΦϑϥΠϯ J04Ҏ߱ ੑೳ #FTU (PPE "1*੍ݶ ͋Γ ͳ͠
ରԠݴޠ Ҏ্ Ҏ্ ຊޠ ˓ ❌
"1*ͷ੍ݶ wΦϑϥΠϯͰ੍ݶͳ͠ w4'4QFFDI3FDPHOJUJPO3FRVFTU wϦΫΤετඵ w࣌ؒʹճ ΞϓϦ͝ͱͰͳ͘ɺσόΠε͝ͱͷ੍ݶ
࣮ w 4QFFDIΛΠϯϙʔτ w -PDBMFΛࢦఆ ಛఆͷݴޠΛࢦఆ͢Δํ๏ Ϣʔβʔͷݱࡏͷ-PDBMFΛઃఆ͢Δํ๏ SFSpeechRecognizer(locale: Locale(identifier: "ja_JP"))
SFSpeechRecognizer(locale: Locale.current) import Speech
࣮ ΞΫηεڐՄ SFSpeechRecognizer.requestAuthorization {status in switch status { case .authorized:
case .denied: case .restricted: case .notDetermined: } }
࣮ w ϦΞϧλΠϜԻղੳ w Իͨ͠ԻΛղੳ SFSpeechAudioBufferRecognitionRequest() SFSpeechURLRecognitionRequest(url: URL) Իιʔεͷఆٛ
࣮ 3FRVFTUͷ݁ՌΛॲཧ speechRecognizer?.recognitionTask(with: speechRequest, resultHandler: { (speechResult, error) in if
speechResult.isFinal { print("Speech in the file is \ (speechResult.bestTranscription.formattedString)") }
Իೝࣝ݁Ռ J04·Ͱ w ॻ͖ى͜͠ 5SBOTDSJQUJPO ༩͑ΒΕͨԻશମΛςΩετͰදͨ͠ͷ w ସղऍ "MUFSOBUJWFJOUFSQSFUBUJPOT
ॻ͖ى͜͠ͷҟͳΔղऍ w ৴པ $POpEFODFMFWFMT ॻ͖ى͕͜͠Ϣʔβʔͷ4QFFDIͱਖ਼֬ʹҰக͢Δͱ͍͏৴པ w λΠϛΠϯάใ 5JNJOHJOGPSNBUJPO ೝࣝͨ͠ԻͷதͰ͍ͯͨ͠୯ޠͳͲͷ։͔࢝Βͷඵ
Իೝࣝ݁Ռ J04Ҏ߱ w TQFBLJOH3BUF ؒʹ͞ΕΔݴ༿ͷ w ฏۉٳࢭ࣌ؒ BWFSBHF1BVTF%VSBUJPO
୯ޠؒͷҰ࣌తͳఀࢭ࣌ؒͷฏۉɺ୯Ґඵ w Իղੳػೳ SFTVMUCFTU5SBOTDSJQUJPOTFHNFOUT͔Βऔಘ
4'5SBOTDSJQUJPO4FHNFOU w શମͷҰ෦Λৄࡉʹऔಘ͢ΔͨΊʹར༻ w ҰͭͷҙຯΛද͢୯ޠɺ୯ޠͷάϧʔϓͷԻ w FYڞ༗ձɹˠࠓ༠սɺڞ༗ճɹͳͲʣ
4'7PJDF"OBMZUJDT J04Ҏ߱ w +JUUFSϐονͷมԽΛɺϑϨʔϜͷجຊपͷύʔηϯςʔδͰදͨ͠ͷ TFHNFOUWPJDF"OBMZUJDT KJUUFSBDPVTUJD'FBUVSF7BMVF1FS'SBNF w 4IJNNFS֤ϑϨʔϜʹ͓͚Δྔ҆ఆੑʢৼ෯ʣͷมԽΛσγϕϧͰද͢ TFHNFOUWPJDF"OBMZUJDT TIJNNFSBDPVTUJD'FBUVSF7BMVF1FS'SBNF
w 1JUDI֤ϑϨʔϜʹ͓͚ΔԻ৭ʢجຊपʣͷߴΛରͰදͨ͠ͷ TFHNFOUWPJDF"OBMZUJDT QJUDIBDPVTUJD'FBUVSF7BMVF1FS'SBNF w 7PJDJOHεϐʔνͷதͰൃੜͨ͠ԻҬ < >ͷൣғͷ֬Ͱදͨ͠ͷ TFHNFOUWPJDF"OBMZUJDT WPJDJOHBDPVTUJD'FBUVSF7BMVF1FS'SBNF
ࣗͷ͍ൃԻͰࢼͯ͠Έͨ w ʮڞ༗ձʯൃԻ ग़ྗ CFTU5SBOTDSJQUJPO GPSNBUUFE4USJOH ڞ༗ձ TQFBLJOH3BUF BWFSBHF1BVTF%V
SBUJPO TFHNFOU BMUFSOBUJWF4VCTUSJOH T ࠓ༠ս ڞ༗ճ DPOpEFODF UJNJOH
࣮࣌ͷҙ w *OGPQMJTU ɹ/44QFFDI3FDPHOJUJPO6TBHF%FTDSJQUJPO ɹ/4.JDSPQIPOF6TBHF%FTDSJQUJPO w ௨தԻ͕Ͱ͖ͳ͍ͷͰσόοά࣌ʹҙ w อଘ͢Δࡍʹ֦ுࢠNBʹ͠ͳ͍ͱԻੳ͕ࣦഊʹͳΔ FY"7"VEJP3FDPSEFSͷSFDPSE
ࢀߟ63- w IUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPOTQFFDI w IUUQTRJJUBDPNZPOFMMJUFNTGFGCECCGD w IUUQTEFWFMPQFSBQQMFDPNWJEFPTQMBZXXED w IUUQTEFWFMPQFSBQQMFDPNMJCSBSZBSDIJWFRBRB @JOEFYIUNMBQQMF@SFGEPDVJE%54
w IUUQTBDBEFNZSFBMNJPKQQPTUTUSZTXJGUNBSDCSPXOTBZJUBJOUTP JNQMFNFOUJOHTQFFDISFDPHOJUJPO