diff --git a/README.md b/README.md index b1702521..49fd5b0e 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ This application provides display and control of Android devices connected on USB. It does not require any _root_ access. It works on _GNU/Linux_, _Windows_ -and _Mac OS_. +and _MacOS_. ![screenshot](assets/screenshot-debian-600.jpg) @@ -40,12 +40,12 @@ The client requires _FFmpeg_ and _LibSDL2_. Install the required packages from your package manager (here, for Debian): ```bash # runtime dependencies -$ sudo apt install ffmpeg libsdl2-2.0.0 +sudo apt install ffmpeg libsdl2-2.0.0 # build dependencies -$ sudo apt install make gcc openjdk-8-jdk pkg-config meson zip \ - libavcodec-dev libavformat-dev libavutil-dev \ -                 libsdl2-dev +sudo apt install make gcc openjdk-8-jdk pkg-config meson zip \ + libavcodec-dev libavformat-dev libavutil-dev \ +                 libsdl2-dev ``` #### Windows @@ -66,20 +66,20 @@ project. From an MSYS2 terminal, install the required packages: [MSYS2]: http://www.msys2.org/ ```bash # runtime dependencies -$ pacman -S mingw-w64-x86_64-SDL2 \ - mingw-w64-x86_64-ffmpeg +pacman -S mingw-w64-x86_64-SDL2 \ + mingw-w64-x86_64-ffmpeg # build dependencies -$ pacman -S mingw-w64-x86_64-make \ - mingw-w64-x86_64-gcc \ - mingw-w64-x86_64-pkg-config \ - mingw-w64-x86_64-meson \ -           zip +pacman -S mingw-w64-x86_64-make \ + mingw-w64-x86_64-gcc \ + mingw-w64-x86_64-pkg-config \ + mingw-w64-x86_64-meson \ +          zip ``` Java (>= 7) is not available in MSYS2, so if you plan to build the server, install it manually and make it available from the `PATH`: ```bash -$ export PATH="$JAVA_HOME/bin:$PATH" +export PATH="$JAVA_HOME/bin:$PATH" ``` #### Mac OS @@ -89,15 +89,15 @@ Use [Homebrew] to install the packages: [Homebrew]: https://brew.sh/ ```bash # runtime dependencies -$ brew install sdl2 ffmpeg +brew install sdl2 ffmpeg # build dependencies -$ brew install gcc pkg-config meson zip +brew install gcc pkg-config meson zip ``` Java (>= 7) is not available in Homebrew, so if you plan to build the server, install it manually and make it available from the `PATH`: ```bash -$ export PATH="$JAVA_HOME/bin:$PATH" +export PATH="$JAVA_HOME/bin:$PATH" ``` ### Common steps @@ -107,21 +107,21 @@ its directory. For example: [Android SDK]: https://developer.android.com/studio/index.html ```bash -$ export ANDROID_HOME=~/android/sdk +export ANDROID_HOME=~/android/sdk ``` Then, build `scrcpy`: ```bash -$ meson x --buildtype release --strip -Db_lto=true -$ cd x -$ ninja +meson x --buildtype release --strip -Db_lto=true +cd x +ninja ``` You can test it from here: ```bash -$ ninja run +ninja run ``` Or you can install it on the system: ```bash -$ sudo ninja install   # without sudo on Windows +sudo ninja install   # without sudo on Windows ``` This installs two files: @@ -147,11 +147,11 @@ In that case, the build does not require Java or the Android SDK. Download the prebuilt server somewhere, and specify its path during the Meson configuration: ```bash -$ meson x --buildtype release --strip -Db_lto=true \ - -Dprebuilt_server=/path/to/scrcpy-server.jar -$ cd x -$ ninja -$ sudo ninja install +meson x --buildtype release --strip -Db_lto=true \ + -Dprebuilt_server=/path/to/scrcpy-server.jar +cd x +ninja +sudo ninja install ``` ## Run @@ -160,28 +160,28 @@ _At runtime, `adb` must be accessible from your `PATH`._ If everything is ok, just plug an Android device, and execute: ```bash -$ scrcpy +scrcpy ``` It accepts command-line arguments, listed by: ```bash -$ scrcpy --help +scrcpy --help ``` For example, to decrease video bitrate to 2Mbps (default is 8Mbps): ```bash -$ scrcpy -b 2M +scrcpy -b 2M ``` To limit the video dimensions (e.g. if the device is 2540×1440, but the host screen is smaller, or cannot decode such a high definition): ```bash -$ scrcpy -m 1024 +scrcpy -m 1024 ``` If several devices are listed in `adb devices`, you must specify the _serial_: ```bash -$ scrcpy -s 0123456789abcdef +scrcpy -s 0123456789abcdef ``` To run without installing: ```bash -$ ./run x [options] +./run x [options] ``` (where `x` is your build directory).