Chromeブラウザでライブストリームを録画する方法(OBS不要)
OBS不要、画面録画不要:HLSライブ配信をChromeで高品質のまま直接録画する3つの方法。
Chromeでライブストリームを録画するのに、OBSを起動したり、ウィンドウキャプチャを設定したり、数時間のビデオを再エンコードしながらCPUに負荷をかける必要はありません。ライブストリームがHLS(2026年ではほとんどのライブストリームがそうです)であれば、ビット単位で忠実なダイレクトストリームコピーで録画でき、再エンコードもなく、画面録画のオーバーヘッドもありません。
このガイドでは、画面録画とストリーム録画の違い、なぜダイレクトHLS録画がほぼいつも優れているのか、そしてChromeで実行する3つの方法を説明します。
画面録画 vs ストリーム録画
オンラインのほとんどの「ライブストリームを録画する」チュートリアルは、画面録画ツール(OBS、Loom、Screencastify、またはOSの組み込み画面キャプチャ)を使うよう案内しています。これらのツールは画面に映っているものをキャプチャするため、次のような問題が生じます:
- ビデオはレコーダーのコーデック設定で再エンコードされます(通常、レコーダーのビットレートでロッシー H.264)
- オーディオはOS オーディオループバックを通じてキャプチャされ、ソースが44.1 kHzだった場合でも48 kHzになることがあります
- 解像度は画面解像度上限です — 1080p画面は4Kソースの4K解像度では録画できません
- 録画中に画面に表示されるもの(通知、マウスカーソル)はすべてファイルに含まれます
- ストリームが実行されている間、CPUとGPUはずっと動作し続けます
ストリーム録画は、HLSセグメントがCDNから到着するときに直接キャプチャします。最終的に得られるファイルは、プレイヤーがダウンロードしたデータとビット単位で同じです。再エンコードなし、オーディオループバックなし、ソース以下の解像度上限なし、そしてネットワークからディスクへのバイトコピーという最小限の作業なのでCPU使用量も最小です。
ソースが4Kで画面が1080pの場合、ストリーム録画は4Kが得られます。画面録画は1080pになります。
HLSライブストリームの仕組み
ライブHLS配信はm3u8マニフェストで、数秒ごとに更新されます。VODマニフェスト(すべてのビデオを事前にリストアップ)とは異なり、ライブマニフェストは直近~30~60秒のセグメントのスライディングウィンドウです。プレイヤーはマニフェストをポーリングし、新しいセグメントが現れたらフェッチし、古いものはバッファから破棄します。
ライブストリームを録画するには、ツールは以下を行う必要があります:
- マスタープレイリストのURLを特定する
- 目的の品質でメディアプレイリストに解決する
- マニフェストを繰り返しフェッチする(セグメント継続時間に応じて2~10秒ごと)
- 現れた新しいセグメントをダウンロードする
- セグメントを順序付けで出力ファイルに追加する
- マニフェストが更新を停止するまで(ストリームが終了するまで)、またはユーザーが録画を停止するまで続ける
- オーディオとビデオが別々のマニフェストにある場合は、上記の処理を並列で2回実行し、マージする
これはVODダウンロードから根本的に異なります。事前に「終了」を探す必要がなく、レコーダーはユーザーが停止を告げるまでポーリングを続けなければなりません。
方法1:ライブ録画対応のChrome拡張機能
ブラウザ拡張機能が最も簡単です。なぜなら、ブラウザのセッション(Cookie、ヘッダー、署名付きURL)を継承し、タブを開いている間ずっと連続で実行されるからです。
Video Downloader One-for-Allは、以下の仕様でHLSライブ録画を処理します:
- Chromeでライブストリームを開く
- 再生が開始されるまで待つ(数秒)
- 拡張機能アイコンをクリック — ツールバーバッジが青くなり、ドロップダウンに利用可能な品質が表示されます
- 品質を選んで「Start Recording」をクリック(VODに使う通常の「Download」ボタンではなく)
- 録画の実行中、タブを開いたままにしておく
- ストリームが終了するか、または停止したいときに「Stop Recording」をクリック
- 拡張機能は飛行中のセグメントを完了し、FFmpeg.wasmを実行してオーディオ + ビデオをミックスダウンし、MP4を保存します
MP4はライブ配信のデータとビット単位で同じです。再エンコード損失なし。
HLSがなぜこのように構造化されているのか、マニフェストがどのように見えるかについての技術的背景は、HLSガイドがプロトコルを基礎から説明しています。完全な機能について詳しくは、Live Stream Recorder ページを参照してください。
方法2:yt-dlp と --live-from-start
yt-dlpはライブHLSを録画できますが、制限があります:
# 手動停止またはストリーム終了まで、現在の時点から録画
yt-dlp "https://www.example.com/livestream"
# ライブストリーム開始時点から録画(マニフェストがまだ早期セグメントを持つ場合)
yt-dlp --live-from-start "https://www.example.com/livestream"
# 特定の期間に制限
yt-dlp --download-sections "*0:00:00-1:00:00" "https://www.example.com/livestream"
制限:
--live-from-startは、マニフェストが早期セグメントをまだ持つ場合のみ機能します(ライブウィンドウは通常30~60秒なので、開始前の最後の1分程度しかキャプチャできることがほぼありません)- yt-dlpのライブHLS信頼性は混在しており、マニフェストがyt-dlpのポーリングより速く回転するときにギャップが生じるストリームもあります
- サブオンリーまたは認証が必要なライブストリームは
--cookies-from-browser chromeが必要です
単純な公開ライブストリームの場合、yt-dlpは機能します。認証の背後にあるか、トークンローテーションが積極的なものの場合、ブラウザ拡張機能パスはより信頼できます。ブラウザのセッション処理を再実装する必要がないからです。
方法3:FFmpegとライブHLSフラグ
FFmpegは適切なフラグでライブHLSを録画できます:
ffmpeg \
-live_start_index -1 \
-i "https://example.com/master.m3u8" \
-c copy \
-t 02:00:00 \
output.mp4
-live_start_index -1はFFmpegに、利用可能な最新セグメントから開始するよう指示します。-t 02:00:00は録画を2時間でキャップします。-tがない場合、FFmpegはストリームが終了するか、Ctrl+Cを押すまで録画します。
オーディオ/ビデオマニフェストが別の場合:
ffmpeg \
-i "https://example.com/video.m3u8" \
-i "https://example.com/audio.m3u8" \
-c copy \
-t 02:00:00 \
output.mp4
FFmpegアプローチは機能しますが、以下に対して脆弱です:
- マスタープレイリストのURL有効期限切れ(ほとんどのライブストリームは数分で有効期限切れになる署名付きURLを使用)
- セグメントフェッチを失敗させるネットワークの不具合(FFmpegは再試行を設定できますが、デフォルトは保守的)
- FFmpegが自動的に設定しないRefererヘッダーをCDNが必要とするライブストリーム
なぜ画面録画がまだときどき正解なのか
ストリーム録画に勝つ画面録画のいくつかのケースがあります:
-
DRM保護されたライブストリーム — Netflix、Disney+、HBO Max、Amazon Prime Video、および類似のサービスはWidevineまたはPlayReady DRMを使用します。HLS録画方法のどれもうまくいきません。暗号化されたセグメントはDRMキーなしでは再生不可です。画面録画は、プレイヤーが画面にデコードしたものをキャプチャします。その時点では保護されていません。(これが法的かどうかはあなたの地域の問題です。)
-
マルチソースレイアウト — ストリームとサイドのチャットパネル、ウェブカメラオーバーレイを録画したい場合、画面録画は単一の合成としてキャプチャする唯一の方法です。
-
極めてDRM隣接プラットフォーム — 一部のプラットフォームはHLSダウンロード試行を検出し、異なる(しばしば低下またはブロック)マニフェストを提供します。画面録画はその検出をバイパスします。
公開ライブストリームの95%では、ストリーム録画の方が高速で、クリーンで、高品質です。画面録画はストリーム録画パスがブロックされたときのフォールバックです。
一般的なライブストリームの落とし穴
ライブマニフェストURL は60秒ごとに有効期限切れになる
ほとんどのライブHLSマニフェストは60~300秒で有効期限切れになる署名付きURLです。マニフェストURLをコピーして10分後に試すと、403が返ります。解決策:ブラウザコンテキストで実行するツール(拡張機能)を使用して、常に新しいURLを取得するようにします。
長い録画の後、オーディオが同期がズレる
ライブオーディオおよびビデオマニフェストは、タイムスタンプベースでドリフトします。数時間後、素朴な連結は聞こえるドリフトを生じます。当社の拡張機能は最大~500 msのドリフトを自動補正します。FFmpegと -fflags +genpts は役立ちますが、非常に長い録画には完全ではありません。
録画中にストリームが開始・停止される
一部のライブストリームは一時停止・再開されます(コマーシャル、技術的な問題)。HLSマニフェストは一時的に新しいセグメントを持たないことがあります。拡張機能とyt-dlpは両方ともこれに無限にポーリングして対応します。デフォルトフラグのFFmpegは早期に終了するかもしれません — -reconnect 1 -reconnect_streamed 1 -reconnect_delay_max 10を渡して、FFmpegに再試行させます。
録画中にコンピューターがスリープに入る
システムがスリープするときに録画が停止します。長い録画中のスリープを防ぐようにパワー設定を確認するか、この問題がないデスクトップを使用します。
他のことをしながら録画できますか?
はい — 録画はバックグラウンドタブで実行され、ほとんどCPUを使用しません(ネットワークI/Oがボトルネック、エンコーディングではなく)。他のサイトをブラウズしたり、他のタブで作業したり、Chromeを閉じて再度開いたりすることもできます(拡張機能は録画状態を保持します)。
比較:どの状況でどの方法
| 状況 | 最良の方法 |
|---|---|
| Twitch ライブストリーム | ブラウザ拡張機能または後でVODをダウンロード |
| 公開放送(ニュース、スポーツ) | ブラウザ拡張機能 |
| 認証付きサブオンリーライブ | ブラウザ拡張機能(セッションを継承) |
| ヘッドレスサーバー/無人スクリプト | yt-dlp または FFmpeg |
| 長い録画(4時間以上) | ブラウザ拡張機能または再接続フラグ付きFFmpeg |
| DRM保護されたライブ | 画面録画が唯一の法的パス;あなたの地域を確認します |
要点
ライブストリームがHLSである場合(ほとんどの場合)、OBSなし、再エンコードなし、画面録画オーバーヘッドなしでダイレクトストリームコピーとして録画できます。最も簡単なパスはプレイヤーと同じタブで実行するブラウザ拡張機能です。yt-dlpとFFmpegはヘッドレスまたはスクリプト化された使用のための良いフォールバックです。
Video Downloader One-for-All をインストールすれば、ライブ録画ワークフローはわずか2クリック:開始、停止。出力は放送されたもののビット単位のMP4です。