攻殻機動隊を観るためにAmazon Primeに一時的に加入しました.氷の城壁もあるしということでとりあえず30日無料で.
LinuxでもPCのウェブブラウザで視聴可能です.でも途中で止まりがちです.とくにCMになるところでよく止まる.そしCMがうるさく体験が悪い…….
Android版Prime Videoアプリを利用
AndroidのPrime Videoアプリだといったんローカルにダウンロードした後(オフラインでも)再生可能で途中で止まらないようです.そしてPCウェブブラウザと比べてCMが少ない感じです.
しかしスマホだと画面が小さすぎます.
Android画面をScrcpyでPCに転送
PCにscrcpyで転送できないかなと試すと真っ黒です.画面保護が効いているとAndroid 12以降+Scrcpyで画面転送するとこうなってしまいます.
Android 11端末(Rakuten Hand 5G)があったのでこちらで試すと保護された画面も見えそうです.
Scrcpyの --new-display オプションでPCのフルスクリーンでと思ったのですが,このアプリはサブディスプレイ非対応と言われてしまいました.
普通にScrcpyでメイン画面を転送してフルスクリーンにすると転送できますが,スマホとPCのアスペクト比が合わないので余白が大きいです.以前やったように,真ん中あたりをcropします.

スマホ解像度は 1520×720 で 1280×720 をくり抜くといいと思うので, scrcpy --crop=720:1280:0:$(1520-1280)/2 な感じでくり抜きました.

Note | 解像度を間違えて無効な解像度を指定するとRakuten hand 5Gは再起動がかかってしまうようです. |
オーディオ転送
これでOKかと思ったら音がで出ません.
[server] ERROR: Failed to start audio capture [server] ERROR: On Android 11, audio capture must be started in the foreground, make sure that the device is unlocked when starting scrcpy. WARN: Demuxer 'audio': stream explicitly disabled by the device
以前は3.5mmオーディオジャック経由やBluetoothで音を転送していましたがScrcpy 2.0からオーディオ転送に対応しているはずです.
以下のガイドによるとAndroid 11の制限で画面ロック解除後にScrcpy接続しないと音が出ないということでそのようにすると音も出るようになりました.
帯域不足?
Wi-Fi(2.4GHz 〜65Mbps)経由だと帯域が足りないのか帯域が必要そうな場所で画面が荒れます.USB(2.0)接続にしたら安定しました.
コマンドはこんな感じにしました.
$ adb shell settings put system user_rotation 1 && (1) scrcpy \ --crop=720:1280:0:$(( (1520-1280)/2 )) \ (2) --turn-screen-off \ (3) --stay-awake (4)
画面を横に回転
画面の真ん中をくり抜き
Androidスクリーンをoff
画面ロック抑制

ということで一旦AndroidのAmazon Primeアプリでダウンロードすることで安定して再生可能,Android 11であれば保護画面もScrcpyでPCに転送可能でした.
正攻法だとGoogle TV Streamerとかを使ってAndroidのキャスト機能でテレビやディスプレイに転送,PCに転送だとHDMIキャプチャ経由でという感じでしょうか.(著作権保護に引っかかるかも?)
しかし,初代Chromecastに比べて大分高いですね…….
環境
$ scrcpy --version scrcpy 4.1 <https://github.com/Genymobile/scrcpy> Dependencies (compiled / linked): - SDL: 3.4.12 / 3.4.14 - libavcodec: 62.28.102 / 62.28.102 - libavformat: 62.12.102 / 62.12.102 - libavutil: 60.26.102 / 60.26.102 - libavdevice: 62.3.102 / 62.3.102 - libusb: - / 1.0.30 $ lsb_release -dr Description: Debian GNU/Linux forky/sid Release: n/a $ arch x86_64
$ adb shell dumpsys package com.amazon.avod.thirdpartyclient | grep version
versionCode=469002047 minSdk=28 targetSdk=36
versionName=3.0.469.2047
signatures=PackageSignatures{e610cfa version:2, signatures:[e627f73a], past signatures:[]}
$ adb shell getprop ro.product.model
P780
$ adb shell getprop ro.build.version.release
11
$ adb shell getprop ro.build.version.sdk
30
$ adb shell getprop ro.product.cpu.abi
arm64-v8a
Likes
Reposts