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
2.8k
SwiftUI Transaction を徹底活用!ZOZOTOWN UI開発での活用事例
tsuzuki817
1
2.6k
レビューを増やしつつ 高評価維持するテクニック
tsuzuki817
3
1.1k
二次元コードを読み取りやすくするために 画面を強制的に明るくするのは もうやめにしませんか?👀
tsuzuki817
0
450
動画だけじゃない!iOS 15のピクチャ・イン・ピクチャを使って好きなUIを表示させよう!
tsuzuki817
3
5.4k
iOS 16からのロック画面Widget争奪戦に備える
tsuzuki817
2
1.1k
Complications and widgets: Reloadedの要約
tsuzuki817
1
1.3k
Build complication in SwiftUI の要約
tsuzuki817
0
740
SwiftUI で Neumorphism!!!
tsuzuki817
2
2k
Other Decks in Programming
See All in Programming
Nitro v3
kazupon
2
320
AIを駆使して新しい技術を効率的に理解する方法
nogu66
1
660
Combinatorial Interview Problems with Backtracking Solutions - From Imperative Procedural Programming to Declarative Functional Programming - Part 1
philipschwarz
PRO
0
100
How Software Deployment tools have changed in the past 20 years
geshan
0
7.7k
Microservices Platforms: When Team Topologies Meets Microservices Patterns
cer
PRO
0
520
競馬で学ぶ機械学習の基本と実践 / Machine Learning with Horse Racing
shoheimitani
14
13k
レイトレZ世代に捧ぐ、今からレイトレを始めるための小径
ichi_raven
0
470
詳細の決定を遅らせつつ実装を早くする
shimabox
2
1.3k
複数チーム並行開発下でのコード移行アプローチ ~手動 Codemod から「生成AI 活用」への進化
andpad
0
180
最新のDirectX12で使えるレイトレ周りの機能追加について
projectasura
0
300
モビリティSaaSにおけるデータ利活用の発展
nealle
1
620
「正規表現をつくる」をつくる / make "make regex"
makenowjust
1
790
Featured
See All Featured
Embracing the Ebb and Flow
colly
88
4.9k
How to Ace a Technical Interview
jacobian
280
24k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
2.9k
How GitHub (no longer) Works
holman
315
140k
Building an army of robots
kneath
306
46k
Unsuck your backbone
ammeep
671
58k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
Scaling GitHub
holman
464
140k
Speed Design
sergeychernyshev
33
1.3k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
How to Think Like a Performance Engineer
csswizardry
28
2.3k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
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