$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
GCCP Creator @ COSCUP 2022
Search
LINE Developers Taiwan
PRO
July 30, 2022
Technology
0
6.7k
GCCP Creator @ COSCUP 2022
Event: COSCUP 2022
https://coscup.org/2022/zh-TW/session/P7HXPX
Speaker: Nijia Lin
LINE Developers Taiwan
PRO
July 30, 2022
Tweet
Share
More Decks by LINE Developers Taiwan
See All by LINE Developers Taiwan
Data Team 實習分享
line_developers_tw
PRO
0
1.1k
Backend Intern之旅
line_developers_tw
PRO
0
3.6k
清大企業參訪- Ben
line_developers_tw
PRO
0
1.1k
LLM 商品規格萃取大冒險- Vila
line_developers_tw
PRO
0
1.1k
Playwright/MCP/AI -Winter
line_developers_tw
PRO
0
1.1k
LINE EC Product Catalog Development- Rei
line_developers_tw
PRO
0
1.1k
LINE 與 AI 機器人技術應用現況
line_developers_tw
PRO
0
15
QA Testing
line_developers_tw
PRO
0
260
jcconf_datadev_prod
line_developers_tw
PRO
0
12
Other Decks in Technology
See All in Technology
セキュリティAIエージェントの現在と未来 / PSS #2 Takumi Session
flatt_security
3
1.4k
“決まらない”NSM設計への処方箋 〜ビットキーにおける現実的な指標デザイン事例〜 / A Prescription for "Stuck" NSM Design: Bitkey’s Practical Case Study
bitkey
PRO
1
350
Claude Code はじめてガイド -1時間で学べるAI駆動開発の基本と実践-
oikon48
43
25k
Security Diaries of an Open Source IAM
ahus1
0
110
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
0
640
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.3k
日本Rubyの会の構造と実行とあと何か / hokurikurk01
takahashim
3
510
バグハンター視点によるサプライチェーンの脆弱性
scgajge12
2
470
履歴テーブル、今回はこう作りました 〜 Delegated Types編 〜 / How We Built Our History Table This Time — With Delegated Types
moznion
15
9.4k
eBPFとwaruiBPF
sat
PRO
3
1.3k
一億総業務改善を支える社内AIエージェント基盤の要諦
yukukotani
8
2.8k
翻訳・対話・越境で強いチームワークを作ろう! / Building Strong Teamwork through Interpretation, Dialogue, and Border-Crossing
ar_tama
4
1.6k
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.2k
Done Done
chrislema
186
16k
A designer walks into a library…
pauljervisheath
210
24k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Making Projects Easy
brettharned
120
6.5k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
120
20k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
Transcript
GCCP Creator LINE Developer Rela/ons NiJia Lin
🥷 NiJia Lin LINE Technology Evangelist COSCUP 2020、2021 講者 LINE
Bot SDK Python 共同維護者 😻貓派、🐶柴⽝派
LINE Technology Evangelist COSCUP 2020、2021 講者 LINE Bot SDK Python
共同維護者 😻貓派、🐶柴⽝派(⽝在哪?) 蟒蛇派 🐍 🥷 NiJia Lin
Cloud Storage Speech To Text IAM & Role Youtube &
Video.js 今⽇ GCCP Creator 圍繞… Cloud Run 凡事總有 個原因 https://github.com/louis70109/GCCP-Creator
🎥 減少獨⾃製作影片的 effort 🎯 增加被平台看⾒的機會 🀄 想紅 https://github.com/louis70109/GCCP-Creator 你好好解釋 -
凡事總要個原因
GCCP 能怎麼增進效率 https://github.com/louis70109/GCCP-Creator
爲什麼⽤ CC 字幕?
使⽤ CC 字幕的原因 優點篇 • 不必等字幕做完才出影片 • 上字幕難免出錯,修改快速 • 自適應(不受解析度影響)
• 提高影片曝光率(Youtube 識別) • Youtube 編輯器夠用 • 額外優惠 • 幫助聽障人士 • 電腦版有自動翻譯 • 有機會讓粉絲幫忙共編 https://github.com/louis70109/GCCP-Creator
使⽤ CC 字幕的原因 缺點篇 • 預設是關閉,需要訓練用戶 • 中文觀眾習慣看內字幕 • 字卡特效較少(不夠吸睛)
https://github.com/louis70109/GCCP-Creator
能怎麼設定 GCCP 呢?
我在講它要聽! ✍ 開啟 SpeechToText
Speech to text
Speech to text 不⽤在 UI 上建立
Speech to text ⽤ API 來操作就好👍
總會需要個玻璃櫃 🦖 建立 Cloud Storage
建立 Google Cloud Storage (a.k.a GCS)
建立 Google Cloud Storage (a.k.a GCS)
⽽且要有鎖頭 🔐 來點 IAM & Role
IAM
IAM
鑰匙不能被發現 – 把 JSON Key 送進環境變數 安全 🆙 部署 🆙
⾦⿂腦 ⬇ • 建立一個暫時檔 • 路徑放環境變數中 • 寫入 GOOGLE_APPLICATION_CREDE NTIALS • ⚠需要框架啟動前
鑰匙不能被發現 – 把 JSON Key 送進環境變數 安全 🆙 部署 🆙
⾦⿂腦 ⬇ • 建立一個暫時檔 • 路徑放環境變數中 • 寫入 GOOGLE_APPLICATION_CREDE NTIALS • ⚠需要框架啟動前
安全 🆙 部署 🆙 ⾦⿂腦 ⬇ • 建立一個暫時檔 • 路徑放環境變數中
• 寫入 GOOGLE_APPLICATION_CREDE NTIALS • ⚠需要框架啟動前 • ⚠需整理成 JSON 樣式 • 單引號 -> 雙引號 鑰匙不能被發現 – 把 JSON Key 送進環境變數
安全 🆙 部署 🆙 ⾦⿂腦 ⬇ • 建立一個暫時檔 • 路徑放環境變數中
• 寫入 GOOGLE_APPLICATION_CREDE NTIALS • ⚠需要框架啟動前 • ⚠需整理成 JSON 樣式 • 單引號 -> 雙引號 鑰匙不能被發現 – 把 JSON Key 送進環境變數
萬事皆上雲 ⛅ 如何部署到 GCP
None
就這樣?🤨
對,就這樣 🤗
• Docker 免、DockerHub 免,只要⼀個 Dockerfile • 省硬碟空間 (但需要神奇⼩卡) • 省去開發初期⿇煩的事情
使⽤ gcloud 好處
做什麼才會觸發 (導火線) 在 CloudRun 設定 Eventarc
Speech to text
設定觸發條件
設定觸發條件
上傳檔案測試
⾃動產⽣ SRT
到 CloudRun 設定 Eventarc
不想住這邊,我要搬走! 使⽤ video.js 的 hints
影片(mp4) ⼈⼈好,別把我送⼈就好 • ⼿動上傳檔會有 CORS • 只要開啟 public 即可 •
誰都不准擋我!
CORS 你聽我解釋 – CC 字幕篇 • ⽤個 API Server 轉成純⽂字給前端
• (Optional) 放在 localStorage 上⾯
CORS 那我要去愛別⼈ – API 我還你原形 • ⽤個 API Server 轉成純⽂字給前端
• (Optional) 放在 localStorage 上⾯ • 因為有 \n,⽤ eval() + Blob 組合把它變成⼀串網址回給 video.js
• 因 GCS 的 CORS 的設定⽬前在 GCP 網⾴介⾯上沒辦法改, ⼀定要⽤ CLI
設定 既然你不聽那我來硬的 – CLI 降⾁!
• 因 GCS 的 CORS 的設定⽬前在 GCP 網⾴介⾯上沒辦法改, ⼀定要⽤ CLI
設定 既然你不聽那我來硬的 – CLI 降⾁!
• 因為 CORS 的設定在 GCP 網⾴介⾯上沒辦法改,⼀定要 ⽤ CLI 設定 •
泡個茶上個廁所,時間到了 Cache 就不在了 • 開啟 DevTools 清除快取(Cache) 過去即是永恆 – 快取放我走!
• 必須要⽤ WebVTT 格式 • Video.js 會⾃動的轉成 big5 • 有時間序的
SRT 字幕檔第⼀⾏ ➕ WEBVTT\n\n(兩個換⾏) 不都在講同⼀件事?Video.js 需要 VTT
那字幕編輯在哪?
別⼈的比較好🚬 (⼩吉) Youtube UI 很夠⽤
管理⼤師⏰的⼤家 能帶走點什麼?
✍揮揮衣袖,不帶走⼀片雲彩 • STT 時間⽀援最低到 nano,但在 Youtube 字幕上也算很精準 • STT 測試起來以⼀分鐘為分⽔嶺,太短的影片可能不適⽤
• 減少初期敲字幕稿的時間(30~40%),只需後續細修、對時間 • 編輯器⽤別⼈的就好,別想⾃⼰寫 (還我三個禮拜!) • 若有 Python、FastAPI 部署相關經驗歡迎等等找我聊🤝 • Video.js ⽢苦談也⼀起來! https://github.com/louis70109/GCCP-Creator
None
None