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
Remotion promotion
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
White-Green
November 16, 2025
Programming
120
1
Share
Remotion promotion
AkarengaLT vol.39
で話したスライドです
Remotion
の紹介をしています
White-Green
November 16, 2025
More Decks by White-Green
See All by White-Green
Chasing Real-Time Observability for CRuby
whitegreen
0
960
Ruby as a Frontend for Programming Language Implementations (RubyKaigi 2025 LT)
whitegreen
0
110
U-22 プログラミング・コンテスト 2021登壇資料
whitegreen
0
330
技育展2021登壇資料
whitegreen
0
70
Compile Time Mathematics in Rust
whitegreen
0
120
Other Decks in Programming
See All in Programming
ReactとSvelteのその先、Ripple-TS / Beyond React and Svelte: Ripple-TS
ssssota
3
1.9k
TSKaigi 2026 TypeScriptバックエンドのオブザーバビリティ戦略 — Datadog × NestJSの実践
taiseiyamamotoan
1
210
[KCD Czech] eBPF Meets the GPU: Future of AI Infra Observability
doniacld
0
130
iOS26時代の新規アプリ開発
yuukiw00w
0
230
脅威をエンジニアリングの糧にして――現場編 / Turning Threats into Engineering Fuel — Field Edition
nrslib
0
220
Spec-Driven Development with AI-Agents: From High-Level Requirements to Working Software
antonarhipov
2
400
AI時代の仕事技芸論 — ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ
kuranuki
1
560
自動レビューエンジンの実装と運用 ~レビューのない世界へ~
kurukuru1999
2
310
tsserverとは何だったのか、これからどうなるのか
nowaki28
1
430
TSKaigi2026-静的解析への投資がAI時代のコード品質を支える ── カスタムESLintルールの設計と運用
hayatokudou
7
1.3k
Inspired By RubyKaigi (EN)
atzzcokek
0
470
AIチームを指揮するOSS「TAKT」活用術 / How to Use “TAKT,” an OSS Tool for Orchestrating AI Teams
nrslib
6
760
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
150
A Modern Web Designer's Workflow
chriscoyier
698
190k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
230
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
380
How GitHub (no longer) Works
holman
316
150k
Utilizing Notion as your number one productivity tool
mfonobong
4
310
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
150
Designing Powerful Visuals for Engaging Learning
tmiket
1
390
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
How to build a perfect <img>
jonoalderson
1
5.5k
Transcript
Remotion https://www.npmjs.com/package/remotion 1
Remotion is 何 • 昔は 「Write Videos in React」 みたいなコピーだった
• Write+Video? • Video+Reactjs? 2 https://remotion.dev
Remotion is 何 • Reactjsで動画を作れます 3
Remotion is 何 • 普通のReact Component • useCurrentFrame hook •
「今レンダリングしようとしているフレー ムが何フレーム目なのか」がとれるフック • フレーム番号を増やしながらレンダリ ング • ChromeのAPIでスクリーンショット • 連番画像からffmpegでmp4に • これをサポートするAPIがいっぱい (e.g. イージング) 4 https://www.remotion.dev/docs/the-fundamentals から抜粋および編集
Remotion pros • Web資産が使い放題 • スクリプト制御が楽 5
Remotion cons • デザインが大変 • レンダリングが重い • テキストは本質的に1次元 6
Pros: Web資産が使い放題 • css filter • blur、drop-shadowなど • 数式、Syntax Highlighting
• react-katex、highlightjs • svgをframeでアニメーション • svg pathの先頭n%のみを取得するAPIがある • .psdを組み替えてpngにするwasmプログラム(Rust製) • 逆に、Web需要が無い機能は無い • 文字の縁取り • トーンカーブ(filterだと線形変換しかできない) • Remotionの処理方法と合わず利用不可の機能(cssアニメーション) 7
Pros:スクリプト制御が楽 • y=abs(sin(frame)) ← 自明 • [x,y]=[random(),random()] ← 自明(randomが専用品) •
音声合成ソフトウェアで音声と同時に音素情報を作っておき、 パースして「あ」「い」「う」「え」「お」に対応する画像を出し分ける 8
Cons: デザインが大変 • 「マージンを1px単位で調整」みたいなことがWebページより高 頻度で発生 • 編集→Ctrl+S→確認→編集… • visualControl APIでだいぶマシに
9 https://www.remotion.dev/docs/studio/visual-control より抜粋
Cons: レンダリングが重い • 1フレームをレンダリングするのに200msぐらいかかってそう • 60fpsだと16.7ms/フレームなので12倍 • 私の使いかたが悪いか? • 10分ちょっとの動画レンダリングに2時間
• AWS Lambdaで動かす力技(試してない) • https://www.remotion.dev/docs/lambda/api • プレビュー画面も重い(ちゃんとしたソフトならレンダリング結果 のキャッシュとかがあるが…) 10
Cons: テキストは本質的に1次元 • 現代の動画編集ソフトのUIはこんな感じ • 横軸が時間、縦軸がオブジェクト同士の重なり • これはClipchamp • (収斂進化とかでもなんでもなく、フィルムを切
り貼りする操作のGUIへの射影から一切進化 してないだけという別の文句) • 字幕1、2、3と画像をタイミングをずらして 表示 11
Cons: テキストは本質的に1次元 • fromとdurationInFramesを手計 算するんですか? 12
Cons: テキストは本質的に1次元 • コンポーネントが細切れになってつらい • コンポーネントだからまだマシだが、設定をべ た書きしてたりすると… • 「ゲーム文脈ではあまりアグレッシブな共通化はす るべきではない」みたいな話ありましたよね
13
Cons: テキストは本質的に1次元 • タイムラインを縦か横に輪切りにして1次元に直して記述する必要 がある • 実現したい表現によって向き不向きがあるのでうまく選べば多少 マシになる 14
まとめ • Remotionというパッケージを紹介 • Reactjsで動画を書ける • Pros: Web資産が使い放題 • Pros:
スクリプト制御が楽 • Cons: デザインが大変 • Cons: レンダリングが重い • Cons: テキストは本質的に1次元 • ブラウザ、Reactエコシステムの変な活用方法としておもしろい 15