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
テレビ録画を遠隔視聴する話
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
ぐるぐる
December 17, 2017
Technology
640
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
テレビ録画を遠隔視聴する話
ぐるぐる
December 17, 2017
More Decks by ぐるぐる
See All by ぐるぐる
ROSConJP 2025 発表スライド
f0reacharr
0
300
StudioAquatan Introduction 2024
f0reacharr
0
22
StudioAquatan Introduction 2024
f0reacharr
0
56
ロボコンのすすめ
f0reacharr
0
73
How to survive campus life at KIT with MacBook
f0reacharr
0
180
Other Decks in Technology
See All in Technology
SONiC Scale-Up Working Group から探る Scale-UpやUltraEthernet機能の実装方法
ebiken
PRO
2
340
SONiCで構築・運用する生成AI向けパブリッククラウドネットワーク ~実装編~
sonic
0
210
Socrates × Looker 〜セマンティックレイヤーで進化するデータ分析エージェント〜
hanon52_
3
2.4k
Bucharest Tech Week 2026 - Reinventing testing practices in the AI era
edeandrea
PRO
1
160
SONiCの統計情報を取得したい
sonic
0
170
MCP Appsを作ってみよう
iwamot
PRO
4
660
あなたの知らないPDFのアクセシビリティ
lycorptech_jp
PRO
0
190
気軽に使える"情報のハブ"としてのNotion活用 〜フロー情報の集積点 と、 Claude Code × Notion AI〜
syucream
1
130
いまさら聞けない「仕様駆動開発入門」 〜AI活用時代の開発プロセスを考える〜
findy_eventslides
1
100
2026 TECHFRESH 畢業分享會 - 開發日常大解密!從領域驅動到企業級上線
line_developers_tw
PRO
0
1k
気づかぬうちにセキュリティ負債を生むAPIキー運用
sgwrmctk
0
130
スキルと MCP ツール、責務をどう分けるか? AI が迷わないインターフェース設計の戦略
cdataj
1
1.1k
Featured
See All Featured
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
840
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
200
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
400
The Spectacular Lies of Maps
axbom
PRO
1
810
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
380
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
30 Presentation Tips
portentint
PRO
1
320
How STYLIGHT went responsive
nonsquared
100
6.2k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2k
The Cult of Friendly URLs
andyhume
79
6.9k
Transcript
テレビ録画を遠隔視聴する話 by @f0reachARR
自己紹介 • TypeScriptやC#などをメインに使用 • Twitter/GitHub: @f0reachARR • Web関連や動画配信技術に興味あり
やりたいこと テレビの録画をどこからでも見られるように! 問題点 • エンコードしないとモバイル回線どころか家の中ですら安定しない • エンコードしながら配信するとすればシークがめんどくさい ◦ Chinachuなどはシークされたところからエンコード ◦
でもこれだとすでにエンコードしたところが無駄になる ◦ ↑これをなんとかする
具体的には 複数のエンコーダーが作成したものをいい感じに繋ぐ エンコーダー1 0:00 10:00 ここから見たい! エンコーダー2 停止 この区間を見たいときはそこをエン コードして、いい感じに
(ry 途中からエンコード
使う技術 • Media Source Extension(MSE) ◦ 動画ファイルを分割したセグメントを読み込ませてタイムスタンプに基づき再生できる ◦ エンコーダーごとの始点の調整は timestampOffsetを使用
◦ 分割が容易(多分)なWebMコンテナで渡す • エンコーダー ◦ めんどくさいのでffmpeg ◦ WebM使うのでVP8+Vorbisでエンコード
MSEのAPIで長さを指定する シークしたらその地点からエンコード そしてエンコードされたら読み込み 読み込み時にoffsetを設定する 出来たもの 使用されたエンコーダーたち シーク地点からエンコードされ、既にエンコードされている部分は飛ばす
今後の課題 • たまに止まる、しかもリロードすると普通に見れる問題をなんとかする • VP8のHWエンコーダーは少ない→H.264を使いたい→MP4版作成へ • iOSはMediaSource非対応→知ったことではない • シークを呼び出す条件とかバッファリングとか→なんとかします!
ご清聴ありがとうございます