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.9k
レビューを増やしつつ 高評価維持するテクニック
tsuzuki817
3
1.1k
二次元コードを読み取りやすくするために 画面を強制的に明るくするのは もうやめにしませんか?👀
tsuzuki817
0
440
動画だけじゃない!iOS 15のピクチャ・イン・ピクチャを使って好きなUIを表示させよう!
tsuzuki817
3
5k
iOS 16からのロック画面Widget争奪戦に備える
tsuzuki817
2
1.1k
Complications and widgets: Reloadedの要約
tsuzuki817
1
1.3k
Build complication in SwiftUI の要約
tsuzuki817
0
720
SwiftUI で Neumorphism!!!
tsuzuki817
2
1.9k
SwiftUIで作りながら学ぶアニメーション インジケーター編
tsuzuki817
0
620
Other Decks in Programming
See All in Programming
Jakarta EE Meets AI
ivargrimstad
0
650
DataformでPythonする / dataform-de-python
snhryt
0
160
React 使いじゃなくても知っておきたい教養としての React
oukayuka
18
5.5k
「リーダーは意思決定する人」って本当?~ 学びを現場で活かす、リーダー4ヶ月目の試行錯誤 ~
marina1017
0
200
ZeroETLで始めるDynamoDBとS3の連携
afooooil
0
150
Flutter로 Gemini와 MCP를 활용한 Agentic App 만들기 - 박제창 2025 I/O Extended Seoul
itsmedreamwalker
0
130
CLI ツールを Go ライブラリ として再実装する理由 / Why reimplement a CLI tool as a Go library
ktr_0731
3
1k
Dart 参戦!!静的型付き言語界の隠れた実力者
kno3a87
0
180
The State of Fluid (2025)
s2b
0
120
0から始めるモジュラーモノリス-クリーンなモノリスを目指して
sushi0120
0
250
LLMOpsのパフォーマンスを支える技術と現場で実践した改善
po3rin
2
380
実践 Dev Containers × Claude Code
touyu
1
170
Featured
See All Featured
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
800
StorybookのUI Testing Handbookを読んだ
zakiyama
30
6k
KATA
mclloyd
32
14k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
332
22k
Automating Front-end Workflow
addyosmani
1370
200k
Git: the NoSQL Database
bkeepers
PRO
431
65k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
A Tale of Four Properties
chriscoyier
160
23k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Facilitating Awesome Meetings
lara
54
6.5k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
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