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.8k
Speech framework tips
speech framework tips
Ryo Tsuzukihashi
July 10, 2020
Tweet
Share
More Decks by Ryo Tsuzukihashi
See All by Ryo Tsuzukihashi
AlarmKitで実現する 新時代のシステム通知
tsuzuki817
0
4.2k
SwiftUI Transaction を徹底活用!ZOZOTOWN UI開発での活用事例
tsuzuki817
1
2.8k
レビューを増やしつつ 高評価維持するテクニック
tsuzuki817
3
1.2k
二次元コードを読み取りやすくするために 画面を強制的に明るくするのは もうやめにしませんか?👀
tsuzuki817
0
480
動画だけじゃない!iOS 15のピクチャ・イン・ピクチャを使って好きなUIを表示させよう!
tsuzuki817
3
5.7k
iOS 16からのロック画面Widget争奪戦に備える
tsuzuki817
2
1.1k
Complications and widgets: Reloadedの要約
tsuzuki817
1
1.4k
Build complication in SwiftUI の要約
tsuzuki817
0
750
SwiftUI で Neumorphism!!!
tsuzuki817
2
2k
Other Decks in Programming
See All in Programming
[KNOTS 2026登壇資料]AIで拡張‧交差する プロダクト開発のプロセス および携わるメンバーの役割
hisatake
0
250
CSC307 Lecture 03
javiergs
PRO
1
490
Fragmented Architectures
denyspoltorak
0
150
CSC307 Lecture 01
javiergs
PRO
0
690
AI Agent Tool のためのバックエンドアーキテクチャを考える #encraft
izumin5210
6
1.8k
MDN Web Docs に日本語翻訳でコントリビュート
ohmori_yusuke
0
640
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
180
LLM Observabilityによる 対話型音声AIアプリケーションの安定運用
gekko0114
2
420
CSC307 Lecture 07
javiergs
PRO
0
550
余白を設計しフロントエンド開発を 加速させる
tsukuha
7
2.1k
Apache Iceberg V3 and migration to V3
tomtanaka
0
150
2026年 エンジニアリング自己学習法
yumechi
0
130
Featured
See All Featured
Designing Powerful Visuals for Engaging Learning
tmiket
0
220
Testing 201, or: Great Expectations
jmmastey
46
8k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
200
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.3k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
110
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
140
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.3k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
72
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