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
JAWS DAYS 2024 C-9
Search
matsuihidetoshi
March 11, 2024
Technology
0
130
JAWS DAYS 2024 C-9
matsuihidetoshi
March 11, 2024
Tweet
Share
More Decks by matsuihidetoshi
See All by matsuihidetoshi
web-application-security
matsuihidetoshi
1
260
クラウドだからできた 地方主導のJAWS DevOps
matsuihidetoshi
2
400
既存システムのコンテナ化で得られた知見と、 全然関係ないけど自炊を支える技術
matsuihidetoshi
0
950
Media JAWS 2023/1
matsuihidetoshi
1
540
Efforts to Organizing & Broadcastiong JAWS-UG's global event "JAWS PANKRATION 2021 -Up till Down-"
matsuihidetoshi
0
130
サーバレスアーキテクチャの考え方
matsuihidetoshi
0
48
コミュニティイベント配信基盤での サーバーレスアーキテクチャ実践
matsuihidetoshi
0
580
再利用可能なサーバーレス配信コンポーネント
matsuihidetoshi
0
170
Amplify とノー(ロー)コード開発
matsuihidetoshi
0
150
Other Decks in Technology
See All in Technology
AWS Lambdaと歩んだ“サーバーレス”と今後 #lambda_10years
yoshidashingo
1
170
dev 補講: プロダクトセキュリティ / Product security overview
wa6sn
1
2.3k
Amazon Personalizeのレコメンドシステム構築、実際何するの?〜大体10分で具体的なイメージをつかむ〜
kniino
1
100
Application Development WG Intro at AppDeveloperCon
salaboy
0
180
Evangelismo técnico: ¿qué, cómo y por qué?
trishagee
0
360
OCI Vault 概要
oracle4engineer
PRO
0
9.7k
TanStack Routerに移行するのかい しないのかい、どっちなんだい! / Are you going to migrate to TanStack Router or not? Which one is it?
kaminashi
0
580
B2B SaaSから見た最近のC#/.NETの進化
sansantech
PRO
0
750
エンジニア人生の拡張性を高める 「探索型キャリア設計」の提案
tenshoku_draft
1
120
Shopifyアプリ開発における Shopifyの機能活用
sonatard
4
250
ドメイン名の終活について - JPAAWG 7th -
mikit
33
20k
Engineer Career Talk
lycorp_recruit_jp
0
150
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Become a Pro
speakerdeck
PRO
25
5k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
The Cult of Friendly URLs
andyhume
78
6k
Site-Speed That Sticks
csswizardry
0
23
GraphQLとの向き合い方2022年版
quramy
43
13k
Gamification - CAS2011
davidbonilla
80
5k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
25
1.8k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Testing 201, or: Great Expectations
jmmastey
38
7.1k
Transcript
JAWS DAYS 2024 ハッシュタグ:#jawsdays2024 #jawsug #jawsdays2024_c JAWS DAYS 2024 松井
英俊・吉江 瞬・古里 武士 Hao Chen・Todd Sharp C-9 [P] あなたのアイディアが コミュニティイベントで採用!? JAWS PANKRATION 2024 Live Architecting
ハッシュタグ:#jawsdays2024 #jawsug #jawsdays2024_c 自己紹介 松井 英俊 2 株式会社スタートアップテクノロジー AWS Serverless
Hero 吉江 瞬 AWS Security Hero JAWS PANKRATION 2021 Chairman 古里 武士 株式会社DIGITALJET AWS Samurai 2022 Hao Chen AWS (Customer Success Engineer, Amazon IVS) Todd Sharp AWS (Principal Developer Advocate, Amazon IVS)
3 基本コンセプト: グローバルイベントとしての開催 海外のコミュニティとの関係強化 日本のコミュニティメンバーたちを海外へ 24時間以上のオンラインイベント 新たな Hero を見つける 結果:
• コミュニティメンバーのみで構築・運用 • 24時間0ダウンタイム配信 • ポケトークを使ったリアルタイム翻訳 • 22カ国から900人以上の参加者 • 13カ国から70人以上の登壇者 • 後のイベントにつながるアウトプット • グローバルに JAWS の認知を拡大
ハッシュタグ:#jawsdays2024 #jawsug #jawsdays2024_c 2021の振り返り 4 • ユーザーグループ主導でグローバルイベントを実施し、可能性を示すことができた • ユーザーグループの日本での活動をグローバルに広く認知させることができた よかったこと
課題 • 翻訳デバイス等の配送や取り扱いの難しさ • ランゲージバリアを払拭し切れていない • さらに多くの国から多くの参加者を巻き込みたい
ハッシュタグ:#jawsdays2024 #jawsug #jawsdays2024_c 2021の配信基盤の機能や特徴 5 • 完全にサーバーレス • Amazon IVS
を使った低遅レイテンシー配信 • Pocketalk を併用したリアルタイム翻訳 • 登壇情報や視聴者数などを動画自体に組み込む • SaaS 活用による管理画面構築の省略 • IaC 化により再現を容易に
ハッシュタグ:#jawsdays2024 #jawsug #jawsdays2024_c 2021の配信アーキテクチャ 6
ハッシュタグ:#jawsdays2024 #jawsug #jawsdays2024_c 動作解説: 翻訳 7 1. 登壇者が Pocketalk
で喋る 2. Pocketalk の Web ページに 翻訳が表示される 3. 配信オペレーター用の画面に 翻訳内容が埋め込まれる
ハッシュタグ:#jawsdays2024 #jawsug #jawsdays2024_c 動作解説: 視聴者数表示 8 1. EventBridge ルールで Lambda
関数を 毎分呼び出し 2. Lambda 関数が IVS の視聴者数を 取得する 3. Lambda 関数が 視聴者数を DynamoDB に保存する 4. Lambda 関数が IVS の TimedMetadata として 視聴者数を送信リクエストする 5. IVS の TimedMetadata として 視聴者数が配信オペレーター用 ページに送信、表示される
ハッシュタグ:#jawsdays2024 #jawsug #jawsdays2024_c 動作解説: 情報埋め込み 9 2. Spreadsheet の API
を使って オペレータ用ページに 情報を表示する 3. オペレーターが専用ページに アクセスしてマシンの画面上に 各種情報を表示する 1. 配信前に登壇者名やタイトル、紹介文を Spreadsheet に用意しておく
ハッシュタグ:#jawsdays2024 #jawsug #jawsdays2024_c 動作解説: 動画合成 10 1. オペレーターが登壇者と共に Zoom ミーティングに参加する
2. オペレーターが専用ページに表示された 全ての情報を OBS Studio を使って合成し 1つの配信用動画データとして組み立てる
ハッシュタグ:#jawsdays2024 #jawsug #jawsdays2024_c 動作解説: 配信 11 最終的に全ての情報を含んだ動画が IVS から視聴者に低レイテンシー配信される
ハッシュタグ:#jawsdays2024 #jawsug #jawsdays2024_c 画面構成とデータの流れ 12
ハッシュタグ:#jawsdays2024 #jawsug #jawsdays2024_c 2024で達成したいこと 13 • グローバルイベントに参加し、英語話者ではない優秀な開発者やアーキテクトがいることを知る • あらゆる開発者やアーキテクトに登壇の機会を与えたい ランゲージバリアを取り払いたい
具体的な目標や課題 • リアルタイム自動翻訳は前回から踏襲しつつもデバイスレスにしたい • 登壇者、視聴者のマシンスペックなどの環境になるべく依存しない安定的な配信をしたい • 登壇者、視聴者共にできるだけ母国語で話す、聞くができるようにしたい • AWS サービスのみで機能を実現したい
ハッシュタグ:#jawsdays2024 #jawsug #jawsdays2024_c 技術的課題 14 • どうやって from 多言語 to
多言語に翻訳するか? ◦ Amazon Translate? ◦ 翻訳言語モデル? • どうやって多言語翻訳をデータとしてクライアントサイドに送信するか? ◦ 翻訳先言語分の IVS ストリーミングを作る? ◦ WebSocket で送信する? • どうやって登壇者、視聴者が話しやすい、聞きやすいインターフェースにするか? ◦ 翻訳を意識しない自然な音声を入力として受け付けられるか? ◦ 言語を自動検出できるか?
ハッシュタグ:#jawsdays2024 #jawsug #jawsdays2024_c Pankration 2024 全体図(考案中) 15
ハッシュタグ:#jawsdays2024 #jawsug #jawsdays2024_c 例1. 言語の数だけ配信するパターン 16 • メリット ◦ 動画内に翻訳テキストを埋め込みできる
• デメリット ◦ 翻訳と配信のズレを補正できるか? ◦ オペレーター側のマシンスペック要件が高まる ◦ IVS 入力コストが跳ね上がる ◦ Lambda がボトルネックにならないか? ◦ 翻訳を意識した喋りが必要 ◦ TimedMetadata の文字数制限を回避する必要がある
ハッシュタグ:#jawsdays2024 #jawsug #jawsdays2024_c 例2. WebSocket を使うパターン 17 • メリット ◦
IVS チャンネルは1つで済む ◦ オペレーター側の負荷が低い ◦ IVS の機能の制約に縛られない ◦ Lambda の負荷分散ができる • デメリット ◦ アーキテクチャが複雑化する ◦ 動画内に翻訳を埋め込みできない ( CSS で擬似的な全画面?) ◦ こちらもやはり 翻訳を意識した喋りが必要
ハッシュタグ:#jawsdays2024 #jawsug #jawsdays2024_c 皆さんの知恵を貸してください!! ディスカッション開始 18
ハッシュタグ:#jawsdays2024 #jawsug #jawsdays2024_c それぞれの案の比較 19 見やすさ 喋りやすさ メリット デメリット 例1
⚪ △ 動画内テキスト埋め込み 可用性不利 コスト増 翻訳考慮した喋り必要 オペレーションマシン要件高い 例2 △ △ コスト有利 可用性有利 オペレーション負荷低い アーキテクチャ複雑化 原則動画内埋め込み不可 翻訳考慮した喋り必要
ハッシュタグ:#jawsdays2024 #jawsug #jawsdays2024_c 20 まとめ
ハッシュタグ:#jawsdays2024 #jawsug #jawsdays2024_c 本日はご参加いただきありがとうございました。アンケートのご記入をお願いします。 アンケートご記入のお願い 21