WDSでできることの一つ
- アンドロイド端末のキャスト機能でWifi経由でPCに画面をシェアできる
リポジトリ
試したときの環境
- lubuntu 18.10
- Atheros9k
入れ方
connmanを入れる
(ソースコードからビルドしようとしたらlibdbus-1-dev (1.12)がすでに入ってるにもかかわらず、1.4以上が必要というわけのわからないエラーが出てきてとても困った。
が、普通にパッケージがあることに気づく。)
# apt-get install connman
wpa_supplicantをいれる
これもソースコードからビルドしようとしたが、/sbin/wpa_supplicant
にすでに入っていたうえに、すでに起動されていたよう。
gstreamer系のパッケージを入れる
gstreamerと名のつくものをとにかくいれまくった
$ dpkg -l gstreamer*
要望=(U)不明/(I)インストール/(R)削除/(P)完全削除/(H)保持
| 状態=(N)無/(I)インストール済/(C)設定/(U)展開/(F)設定失敗/(H)半インストール/(W)トリガ待ち/(T)トリガ保留
|/ エラー?=(空欄)無/(R)要再インストール (状態,エラーの大文字=異常)
||/ 名前 バージョン アーキテクチャ 説明
+++-===========================-==================-==================-===========================================================
un gstreamer1.0-alsa <なし> <なし> (説明 (description) がありません)
un gstreamer1.0-audiosink <なし> <なし> (説明 (description) がありません)
un gstreamer1.0-audiosource <なし> <なし> (説明 (description) がありません)
ii gstreamer1.0-clutter-3.0:am 3.0.26-1 amd64 Clutter PLugin for GStreamer 1.0
un gstreamer1.0-doc <なし> <なし> (説明 (description) がありません)
un gstreamer1.0-fluendo-mp3 <なし> <なし> (説明 (description) がありません)
ii gstreamer1.0-gl:amd64 1.14.4-1ubuntu1 amd64 GStreamer plugins for GL
ii gstreamer1.0-libav:amd64 1.15.0.1+git201807 amd64 libav plugin for GStreamer
ii gstreamer1.0-plugins-bad:am 1.14.4-1ubuntu1 amd64 GStreamer plugins from the "bad" set
un gstreamer1.0-plugins-bad-fa <なし> <なし> (説明 (description) がありません)
un gstreamer1.0-plugins-bad-vi <なし> <なし> (説明 (description) がありません)
ii gstreamer1.0-plugins-base:a 1.14.4-1ubuntu1 amd64 GStreamer plugins from the "base" set
ii gstreamer1.0-plugins-good:a 1.14.4-1ubuntu1 amd64 GStreamer plugins from the "good" set
ii gstreamer1.0-plugins-ugly:a 1.14.4-1 amd64 GStreamer plugins from the "ugly" set
un gstreamer1.0-plugins-ugly-a <なし> <なし> (説明 (description) がありません)
ii gstreamer1.0-pulseaudio:amd 1.14.4-1ubuntu1 amd64 GStreamer plugin for PulseAudio
un gstreamer1.0-tools <なし> <なし> (説明 (description) がありません)
ii gstreamer1.0-vaapi:amd64 1.14.4-1 amd64 VA-API plugins for GStreamer
un gstreamer1.0-vaapi-doc <なし> <なし> (説明 (description) がありません)
un gstreamer1.0-videosink <なし> <なし> (説明 (description) がありません)
un gstreamer1.0-videosource <なし> <なし> (説明 (description) がありません)
un gstreamer1.0-visualization <なし> <なし> (説明 (description) がありません)
ii gstreamer1.0-x:amd64 1.14.4-1ubuntu1 amd64 GStreamer plugins for X11 and Pango
-
下記コマンドが一番効いた
-
コーデックがないみたいなエラーがこれで治った
# apt install gstreamer1.0-plugins-bad-videoparsers
# apt install ubuntu-restricted-extras
呼び出すとき
- wdsのソースコードをビルドしておく
- タブを2つ開いておく
- 片方のタブでconnmanを呼び出しておく。あとはwifi, p2p, agentをgithubのREADMEにかかれている通りの状態にしておく。
- もう片方のタブで ./sink-test (wds/sink以下にある) を呼び出す
- アンドロイド端末でキャストを選択。接続先にwdsを入れたPCが出てくるので選択。
- connmanを呼び出しておいたタブでyes/noがきかれるのでyesを選択。
- あとは画面がシェアされるはず。
備考
- 残念ながら0.5秒ぐらい遅延する。ただ、ビデオとかゲームみたいなリッチなコンテンツでもキャストできる。
- 音声もキャストできる