Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Remotion promotion
Search
White-Green
November 16, 2025
Programming
170
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Remotion promotion
AkarengaLT vol.39
で話したスライドです
Remotion
の紹介をしています
White-Green
November 16, 2025
Transcript
15 slides
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
More Decks by White-Green
See All by White-Green
Chasing Real-Time Observability for CRuby
whitegreen
0
1.3k
Ruby as a Frontend for Programming Language Implementations (RubyKaigi 2025 LT)
whitegreen
0
150
U-22 プログラミング・コンテスト 2021登壇資料
whitegreen
0
350
技育展2021登壇資料
whitegreen
0
87
Compile Time Mathematics in Rust
whitegreen
0
150
Other Decks in Programming
See All in Programming
Materialが消えた日 〜真っ白なFlutterキャンバスにRenderObjectで絵を描く〜
umigishiaoi
0
160
flutter_test のその先へ — Flutter アプリの LLM 機能に「評価」という品質保証を
kosukesaigusa
0
200
Performance Optimization With LLMs
xleitix
0
260
Modernizing iOS Apps
seyfoyun
0
150
作って学ぶSpring BootのAuto Configuration / JJUG Night Seminar 2026-10-19
rshindo
0
230
AI Augmentation Techniques with Liberty
ivargrimstad
1
480
Apple Intelligenceとオンデバイス時代の到来
yahir0
0
240
Lambda durable functionsでHuman in the Loopを楽に…楽に……
har1101
2
310
オーケストレーション記述言語 Katari
yukikurage
0
260
Python Lambdaにおけるテストしやすい設計とAI支援の活用 / Designing Testable Python Lambda Functions with AI
kitano_yuichi
1
330
느린 네트워크와 저사양 디바이스 사용자를 위한 웹뷰 로딩 시간 개선기
kmkim
1
240
はじめてのPLATEAU
nokonoko1203
1
650
Featured
See All Featured
Designing Powerful Visuals for Engaging Learning
tmiket
1
650
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Testing 201, or: Great Expectations
jmmastey
46
8.4k
Color Theory Basics | Prateek | Gurzu
gurzu
1
520
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
580
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Are puppies a ranking factor?
jonoalderson
2
4.2k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.7k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
1k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.9k