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
writer.appを支える技術
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Yohei Isokawa
July 21, 2018
Programming
1k
0
Share
writer.appを支える技術
2018/07/21 上越TechMeetup#2
Yohei Isokawa
July 21, 2018
More Decks by Yohei Isokawa
See All by Yohei Isokawa
今どきのWebアニメーション実装
yuhiisk
0
920
これからはじめるシングルページアプリケーション
yuhiisk
0
810
小学校段階からのプログラミング教育ってどうなる
yuhiisk
0
400
SPA実装最前線 ~今どきのJSフレームワーク選び~
yuhiisk
2
5.1k
Critical CSS
yuhiisk
1
13k
Other Decks in Programming
See All in Programming
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
1.2k
野球解説AI Agentを開発してみた - 2026/02/27 LayerX社内LT会資料
shinyorke
PRO
0
380
AI活用のコスパを最大化する方法
ochtum
0
360
夢の無限スパゲッティ製造機 -実装篇- #phpstudy
o0h
PRO
0
180
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
710
AIコードレビューの導入・運用と AI駆動開発における「AI4QA」の取り組みについて
hagevvashi
0
580
今からFlash開発できるわけないじゃん、ムリムリ! (※ムリじゃなかった!?)
arkw
0
170
Smarter Angular mit Transformers.js & Prompt API
christianliebel
PRO
1
110
Redox OS でのネームスペース管理と chroot の実現
isanethen
0
480
Nuxt Server Components
wattanx
0
220
ファインチューニングせずメインコンペを解く方法
pokutuna
0
220
Kubernetesでセルフホストが簡単なNewSQLを求めて / Seeking a NewSQL Database That's Simple to Self-Host on Kubernetes
nnaka2992
0
190
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1370
200k
How GitHub (no longer) Works
holman
316
150k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
350
Building an army of robots
kneath
306
46k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.8k
Speed Design
sergeychernyshev
33
1.6k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.5k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
400
30 Presentation Tips
portentint
PRO
1
270
Being A Developer After 40
akosma
91
590k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
240
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
Transcript
writer.appを⽀える技術 五⼗川 洋平 (POPCORN) 2018.07.21 上越TechMeetup#2
⾃⼰紹介 • 五⼗川 洋平(イソップ) - 上越TechMeetup主催 - 上越市在住のフリーランスエンジニア • 趣味:ヨーヨー、バス釣り
• Twitter:@yuhiisk • イソップブログ(http://blog.yuhiisk.com)
writer.app
間に合いませんでした… (ヽ´ω`)
だが⾔わせてくれ • 開発の経緯
だが⾔わせてくれ • 開発の経緯 • 開発技術の紹介
だが⾔わせてくれ • 開発の経緯 • 開発技術の紹介 • 今後の野望
事の発端 • ⾳声⽂字起こしは地道で不⽑な作業。 (想像以上に時間がかかる)
事の発端 • ⾳声⽂字起こしは地道で不⽑な作業。 (想像以上に時間がかかる) • 解決できる便利なアプリがない。
事の発端 • ⾳声⽂字起こしは地道で不⽑な作業。 (想像以上に時間がかかる) • 解決できる便利なアプリがない。 • じゃあちょっと作りますか。
プロトタイプ期
Twitterでの反応
Twitterでの反応
Twitterでの反応
SPA移⾏期
裏技による⾃動⽂字起こし https://note.mu/yriica/n/n3050888696ab
• writer.appとSoundflower(Mac)を組み合わせて ⾃動で⽂字起こしができる。 裏技による⾃動⽂字起こし
本腰⼊れてアップデート期
• 外部のアプリケーションを使わない。 本当の⾃動化を実現する(WIP)
• 外部のアプリケーションを使わない。 • 操作をもっと簡単に。 本当の⾃動化を実現する(WIP)
• 外部のアプリケーションを使わない。 • 操作をもっと簡単に。 • もっと使いやすく。 本当の⾃動化を実現する(WIP)
開発版デモ
主な機能 • ⾳声ファイル再⽣での⽂字起こし
主な機能 • ⾳声ファイル再⽣での⽂字起こし • マイク⼊⼒による⽂字起こし
主な機能 • ⾳声ファイル再⽣での⽂字起こし • マイク⼊⼒による⽂字起こし • アップロードした⾳声ファイルの⾃動⽂字起こし
主な機能 • ⾳声ファイル再⽣での⽂字起こし • マイク⼊⼒による⽂字起こし • アップロードした⾳声ファイルの⾃動⽂字起こし • ドキュメントの保存
Google Speech-to-Text
Google Speech APIによる⾳声認識
Google Speech APIによる⾳声認識 • ブラウザAPI以上の精度を期待。
Google Speech APIによる⾳声認識 • ブラウザAPI以上の精度を期待。 • 環境に左右されない。
Google Speech APIによる⾳声認識 • ブラウザAPI以上の精度を期待。 • 環境に左右されない。 • 公開されているため現実的な選択。
Google Speech APIによる⾳声認識 ストリーミング
ストリーミングでの⾳声認識 • navigator.mediaDevices.getUserMedia
ストリーミングでの⾳声認識 • navigator.mediaDevices.getUserMedia • Web Audio API
ストリーミングでの⾳声認識 • navigator.mediaDevices.getUserMedia • Web Audio API • Websocket (VMインスタンスを利⽤)
Google Speech APIによる⾳声認識 ⾳声ファイルをアップロード
⾳声ファイルからの⾳声認識 • Cloud Storage ( ≒ AWS S3)
⾳声ファイルからの⾳声認識 • Cloud Storage ( ≒ AWS S3) • Compute
Engine ( ≒ AWS EC2)
これまでは • Web Speech API
これまでは • Web Speech API • Chromeのみ(Firefoxは開発フラグをONにすれば)
Firebaseで開発を加速
Firebaseで開発を加速 • サイトデータのホスティング • ユーザー認証 • リアルタイムデータベース(NoSQL) • Google Cloud
Platformとの統合, etc
Firebaseで開発を加速 Storage Functions Application
Firebaseで開発を加速 Storage Functions Application
Firebaseで開発を加速 Storage Functions Application
Firebaseで開発を加速 Storage Functions Application
Firebaseで開発を加速 Speech To Text Compute Engine Storage
Firebaseで開発を加速 Speech To Text Compute Engine Storage
Firebaseで開発を加速 Speech To Text Compute Engine Storage
Firebaseで開発を加速 Speech To Text Compute Engine Storage Firebase Cloud Messagingで
完了を通知
Firebaseで開発を加速 • Notification API(ブラウザ)
有料化に伴う決済処理
• オンライン決済サービス (https://stripe.com/jp) 有料化に伴う決済処理
• オンライン決済サービス (https://stripe.com/jp) • クレジットカード決済に対応 (VISA / Master/ JCB /
AMEX / Diners / Apple Pay) 有料化に伴う決済処理
• オンライン決済サービス (https://stripe.com/jp) • クレジットカード決済に対応 (VISA / Master/ JCB /
AMEX / Diners / Apple Pay) • アカウント登録不要 有料化に伴う決済処理
• オンライン決済サービス (https://stripe.com/jp) • クレジットカード決済に対応 (VISA / Master/ JCB /
AMEX / Diners / Apple Pay) • アカウント登録不要 • 定期課⾦・従量課⾦ 有料化に伴う決済処理
• デベロッパーファースト (curl, Ruby, Python, PHP, Java, Node, Go, .NET)
有料化に伴う決済処理
有料化に伴う決済処理
• デベロッパーファースト (curl, Ruby, Python, PHP, Java, Node, Go, .NET)
• 開発モードがある 有料化に伴う決済処理
• デベロッパーファースト (curl, Ruby, Python, PHP, Java, Node, Go, .NET)
• 開発モードがある • ⽇本のカスタマーサポート 有料化に伴う決済処理
有料化に伴う決済処理
有料化に伴う決済処理 ① Plans
有料化に伴う決済処理 ① Plans ② Customer
有料化に伴う決済処理 ① Plans ② Customer ③ Subscription
有料化に伴う決済処理 ① Plans ② Customer ③ Subscription ※めっちゃ使えます
今後の野望
• ⽂字起こし機能の強化 今後の野望
• ⽂字起こし機能の強化 • 画像から⽂字起こし • 精度の向上 今後の野望
• ⽂字起こし機能の強化 • 画像から⽂字起こし • 精度の向上 • キャッシュ、オフライン対応 今後の野望
• ⽂字起こし機能の強化 • 画像から⽂字起こし • 精度の向上 • キャッシュ、オフライン対応 • 最終的に統合アプリケーションを⽬指す
今後の野望
アップデートリリースをお待ち下さい