scrcpy で音が出ない — 実際に効く対処法(2026)
scrcpy のオーディオ転送は Android 11 以上でしか動かず、DRM フラグ付きアプリの音は通らない。失敗の見た目は全部同じ「映像は出るけど音だけ無音」で見分けがつかない。下の切り分けツリーを上から順に潰すのが近道。
scrcpy の音が無音になる 5 つの理由
scrcpy を起動したらウィンドウは出たけど、OBS に音が来ない。ほぼ毎回、原因はこの 5 つのどれか。チェックの安い順に並べた。
1. scrcpy が 1.x のままになっている
オーディオ転送は scrcpy 2.0 から(2023 年 5 月)。それ以前のバージョンは映像のみ。
scrcpy --version
# 期待: scrcpy 2.x 以上
Linux ディストリのリポジトリ経由で入れてると、Debian stable 等で古いまま固まっていることがある。Windows なら winget upgrade Genymobile.scrcpy、または GitHub Releases から最新をどうぞ。
2. スマホが Android 10 以下
音声キャプチャに使う MediaProjection の音声 API は Android 11(API 30)以降にしか無い。Android 10 以下だと scrcpy 起動時に警告を出して、音声無しでそのまま続行する:
WARN: Audio capture is not supported before Android 11
OS 側の制限なので scrcpy のオプションでは絶対に直らない。Android のアップデート、機種変更、または Bluetooth / イヤホンジャック経由で PC のライン入力に渡すアナログ路線に切り替える、のどれか。
3. audio-source が間違っている
scrcpy 2.x はソースを選べる。デフォルトはバージョンによって変わる:
| ソース | キャプチャ対象 |
|---|---|
output | スマホ本体のスピーカーに出てる音(ゲーム配信ならこれ) |
playback | 新しい scrcpy では output のエイリアス |
mic | スマホのマイク |
voice_call / voice_recognition | 特殊用途。ゲームの場面では大体無音になる |
うっかり --audio-source=mic で起動していると、部屋の雑音だけ流れてゲーム音はゼロ、というよくある事故になる。明示的に指定すると確実:
scrcpy --audio-source=output
4. アプリが音声を「保護」フラグ付きにしている
Android のアプリは音声出力に FLAG_AUDIO_PLAYBACK_CAPTURE という DRM フラグを立てられる。立っていると MediaProjection は無音を返す。これは scrcpy では迂回できない(アプリ側からの宣言なので)。
よくある引っかかり:
- Spotify、Apple Music、YouTube Music — 課金音楽ストリーミング系
- Netflix、Prime Video、Disney+ — DRM 付き動画の音声
- 一部のソシャゲ(特に韓国・日本系の改造対策 SDK 入りタイトル)
ゲーム配信用途では大半のタイトルがフラグを立てない。ただし「テストで Spotify 流しながら検証」してると、ツールが壊れているように見えて実はアプリ側の制約、というパターンが起きる。
5. scrcpy はちゃんと音を流してるが、OBS が別のデバイスを聞いている
1〜4 が全部 OK な場合、これが残る。scrcpy は PC の 既定の出力デバイスに音を流す。OBS の「デスクトップ音声」はそれを拾う — ただし、既定の出力と OBS が見ているデバイスが同じなら。
Windows での確認手順:
- タスクバーのスピーカーアイコンを右クリック → サウンド設定 → 音量ミキサー
- scrcpy が動いている間、scrcpy の項目がどの出力デバイスに紐付いてるか確認
- OBS の 設定 → 音声 → デスクトップ音声を、同じデバイスに合わせる
macOS は仮想オーディオドライバ(BlackHole / Loopback)が必要。Linux は PulseAudio の pactl load-module module-loopback。
切り分けフローを 1 行で
scrcpy --version # ステップ 1: 2.x か
adb shell getprop ro.build.version.release
# ステップ 2: 11 以上か
scrcpy --audio-source=output # ステップ 3: ソースを明示
DRM 無しのアプリで再現確認 # ステップ 4: アプリ側の制約じゃないか
OBS のオーディオデバイス確認 # ステップ 5: ルーティング
5 つ全部潰してもダメな場合
5 つ全部見て、それでも無音 — または「毎回これをやるのが面倒」になってきた、という段階の選択肢を 3 つ。
選択肢 A — GUI でラップしたツールを使う
scrcpy を GUI で包んだツールは、上の音声ルーティング問題を内側で吸収してくれる。手前味噌だが ChargeCast は scrcpy + 3 チャンネル・オーディオミキサー(ゲーム音・PC 音・マイク)+ ワンクリック GUI を同梱した Windows アプリで、上の失敗パターンの大半を踏まずに済む。月 $4.99、7 日間無料トライアル。週 1 配信派なら時短で割に合う。月 1 配信派なら生 scrcpy で十分。
選択肢 B — アナログで逃げる
スマホのイヤホンジャック(または USB-C → 3.5mm 変換)から PC のライン入力に物理的に流す。ソフト的な複雑さはゼロだが、音量バランスを毎回手動で取り直すのと、デジタル信号の良さは捨てる。
選択肢 C — 端末側で録ってあとで編集
スマホ標準の画面録画でゲームを録って、ファイルを転送して編集する。ライブ配信ではなくなるが、YouTube アップロードならこれで十分なケースも多い。
DroidCam や AirDroid 等は?
短く:DroidCam はスマホを「ウェブカメラ」として扱う発想で、音はマイクキャプチャ経由になる。ゲーム音と自分の声がマイクラインで戦う。AirDroid や類似の Wi-Fi ミラーは、無料プランだと音声を流さない or 遅延が大きい。これらは Android 11+ や DRM の制約を解いているわけではなく、別の場所に隠しているだけ。
下回りに使うべきツールは結局 scrcpy で正解。問題は「自分でルーティングするか、ラッパーを使うか」だけ。
音のルーティング問題を毎回踏まないために。
ChargeCast は scrcpy + 3 チャンネル・オーディオミキサーを同梱。OBS に渡すソースは Window Capture 1 枚で済む。7 日間無料トライアル。
▶ Microsoft Store で ChargeCast を試す