1. 개요
다운로드 페이지Screen Copy의 약칭.
Genymobile 회사에서 만든 PC를 위한 안드로이드 미러링 도구. Windows, macOS, Linux를 지원한다.
저사양 컴퓨터라 안드로이드를 돌릴 만한 리소스가 없거나, 쓸 만한 앱플레이어가 없는 리눅스 등에서 유용하다.
꽤 현대 사양이라 할 수 있는 PC라 해도 요즘 모바일 게임도 많이 고사양화되어 리소스를 PC와 모바일로 분담해야 할 때도 유용하다. 여러 개의 게임을 한꺼번에 구동해도 PC의 리소스 소모는 매우 적다.
2. 사양
2.1. 최소사양
- 사운드 제외 화면만 전달할 수 있는 사양
- 프레임이 부드럽지는 않으나 실행은 되는 사양
- 해상도 명령어 --max-size=1920 에서부터 해상도와 프레임 타협을 볼 수 있는 선까지 숫자를 조금씩 줄여나간다.
- X11 Linux 데스크톱 환경
- 안드로이드 5.0 Lollipop 이상
- USB2 이상
2.2. 권장사양
- 사운드 전달 가능 사양
- 부드러운 프레임 등 쾌적한 사양
- Wayland 데스크톱 환경 및 이를 적극적으로 지원하는 그래픽카드 (라데온 권장)
- 안드로이드 11 이상
- PC, 케이블, 스마트폰 모두 USB3 이상 지원
3. 명령어
권장값(모바일 모드)scrcpy --video-bit-rate=8M --max-size=1920 --max-fps=60 --print-fps --stay-awake --turn-screen-off --video-codec=h264 --video-encoder=OMX.qcom.video.encoder.avc --audio-codec=opus --audio-encoder=c2.android.opus.encoder
권장값(데스크탑 모드, 플렉스 디스플레이)
scrcpy --stay-awake --flex-display --new-display
권장값(데스크탑 모드, 고정비율 디스플레이, 특정 게임에서 창크기 조절 시 화면잘림, 미스클릭 등 버그 발생 방지)
scrcpy --stay-awake --new-display=1600x900/240
권장값(데스크탑 모드, 특정 앱 실행)
scrcpy --stay-awake --new-display=1600x900/240 --start-app=com.android.settings
권장값(데스크탑 모드, 특정 앱 실행, 내비게이션 바 숨기기)
scrcpy --stay-awake --new-display=1600x900/240 --start-app=com.android.settings --no-vd-system-decorations
3.1. 모바일 모드 (일반 미러링)
--video-bit-rate=8M- 비디오 비트레이트를 설정한다.
--max-size=1920- 비디오 가로 해상도를 설정한다.
--max-fps=60- 비디오 최대 프레임.
--print-fps- 현재 프레임 드랍률 표시. 콘솔 화면이 켜져 있어야 작동한다.
--stay-awake- 연결 시 스마트폰이 항상 깨어 있다. 잠기지 않는다.
--turn-screen-off- 연결 시 스마트폰 화면을 끈다. 배터리 사용 및 발열을 줄일 때 유용하다.
--video-codec=h264--video-encoder=OMX.qcom.video.encoder.avc--audio-codec=opus--audio-encoder=c2.android.opus.encoder- 인코더를 설정한다. 먼저
scrcpy --list-encoders로 확인 요망. --video-codec-options=priority=0,profile=1- priority=0 은 인코더의 우선 순위를 0(실시간)으로 설정.
- profile=1 은 복잡한 인코딩을 하지 않고 대강 인코딩하여 대역폭(용량)/화질 가성비를 희생하는 대신 지연 시간을 최소화
--video-buffer=16(구버전:--display-buffer)- 디스플레이 버퍼.
--window-title "안드로이드 스마트폰 미러링"- 창 제목 설정. 미설정 시 스마트폰의 모델명이 보인다.
3.2. 데스크탑 모드
--new-display=1600x900/240- 데스크탑 모드의 기본 명령어. 데스크탑 모드 적용과 동시에, 해상도와 폰트 크기를 조절한다. 해상도를 너무 낮추면 앱 서랍 메뉴가 잘릴 수 있다. 1600x900이 앱 서랍 메뉴가 잘리지 않는 마지노선이다.
--flex-display- 해상도가 창 크기에 따라 가변적이며 반응형으로 크기를 조절할 수 있어 레터박스 없는 꽉 찬 화면을 볼 수 있다. (일부 구세대 엔진 게임은 16:9 고정이라 레터박스가 생긴다.)
- 일부 멀티윈도우가 호환되지 않는 게임에서는 화면이 잘리거나 엉뚱한 곳 미스클릭 같은 버그가 발생한다. 이 때는 창 최대화를 하지 말고 버그가 사라질 때까지 창 크기를 조절하거나, 그냥
--flex-display파라미터를 지우면 화면비율이 고정되는 대신 이 버그가 사라진다. (bilibili판 蔚蓝档案에서 확인.[1]) --no-vd-system-decorations --start-app=com.패키지명- 내비게이션 바를 포함해 모든 시스템 UI 요소를 제거하여 내비게이션 바 미스클릭 현상을 방지하고 리소스를 절약한다. (현대 사양 기준으로는 극소량) 반드시 특정 앱을 실행하는 명령어
--start-app=com.패키지명과 함께 써야 하며, 이 명령을 입력하지 않을 시 그냥 빈 화면만 나온다.
3.2.1. 특징
- scrcpy 4.0 (2026년 5월자)부터 추가된 기능. 스마트폰 장치에 듀얼 모니터를 형성하여 PC처럼 사용한다.
- 여러 창을 열어 여러 앱을 실행하는 멀티태스킹을 할 수 있다. 그러나 스마트폰 사양이 충족되어야 한다.
- 모바일 모드에서는 PC에서 창을 닫아도 프로세스는 모바일에서 계속 구동되지만, 데스크탑 모드에서 PC에서 이 창을 닫으면 창 닫기 행동을 인식하여 해당 창의 프로세스가 종료된다.
3.2.2. 단점
- 여러 게임 창을 열 때 사운드가 겹쳐 비행기 날아다니는 소리처럼 왜곡되어 들린다. KDE Plasma 환경에서는 작업 표시줄에서 하나만 남기고 다른 창의 소리를 전부 음소거 처리할 수 있다.
- 전체 화면 게임을 하는데, 밑의 내비게이션 바가 숨겨지지 않아, 이 부분은 클릭되지 않거나, 원하지 않는 버튼이 미스클릭이 발생하는 게 불편하다. 해결 법은
--start-app=com.패키지명 --no-vd-system-decorations명령어를 추가하여, 네이티브 실행하듯이 실행하면 미스클릭이 발생하지 않고, 창을 닫을 때도 깔끔하게 앱이 종료된다. - 하나의 앱만 실행 시에는 상황에 따라 이게 더 화면 리사이즈 및 프레임이 부드러울 수 있으나, 많은 창을 띄워 한 폰에서 멀티태스킹을 할 시에는 스마트폰 사양이 딸려 스마트폰의 해상도와 프레임이 낮아져 오히려 보기 흉할 수 있다. USB를 꽂은 상태에서도 배터리가 소모되고 단말기가 뜨거워져 충전을 거부하므로 냉각을 잘 관리하자.
- 아직은 많이 불안정하다. 구동 도중 예고도 없이 USB 연결이 끊겨 불시에 해당 단말기에서 열린 앱이 모두 꺼진다는 게 최악의 단점이다. 게임 도중 꺼지면 불이익을 당할 수 있는 중대사항이거나, 꺼지는 게 불편할 시 멀티태스킹을 포기하고 이 데스크탑 모드 관련 파라미터를 제거하는 것을 권장한다.
- 실행 도중 USB 연결을 절대 끊으면 안 되므로, USB를 분리할 일이 적도록 휴대하지 않고 거치 모드로만 쓰는 공기계 폰으로 실행을 권장한다.
3.3. 여러 기기 연결 시
scrcpy 3.3.4 <https://github.com/Genymobile/scrcpy>
ERROR: Could not find ADB device SM_S918B:
ERROR: (usb) R3CN10ABCDEF device SM_S918B
ERROR: (usb) R3CT31UVWXYZ device SM_S908N
ERROR: Server connection failed
- 만약 여러 안드로이드 기기가 연결되었을 시, 다음 에러가 발생하며 연결이 실패하는데, 이 때 위와 같은 로그의 시리얼 번호를 참고하여 시리얼 번호 선택
-s R3CN10ABCDEF등을 하면 특정 기기에 연결이 가능하다. 스마트폰 기기마다 고유한 시리얼 번호를 가지며, 바뀌지 않는다. - 이 기능을 활용하여, .sh 스크립트 등을 만들어 여러 대의 스마트폰으로 폰팜(스마트폰 농장)을 만들 수 있다. 필요한 것은 다음과 같다.
- 여러 USB를 연결해도 대역폭 및 전원 공급 과부하를 소화할 수 있는 USB 3.x 이상 유전원 허브
- 발열로부터 기기를 보호하기 위한 쿨러 달린 다중 거치대 및 쿨러를 정상적으로 가동하기 위한 추가 전원
- 만약 VPN이나 가상번호를 막는 곳에서 여러 IP 또는 여러 전화번호로 조작을 해야 한다면 통신사에 가입된 여러 개의 유심이 필요하다.
4. 버전
scrcpy --version으로 확인 가능.2.0 버전부터 오디오를 지원한다.
4.0(2026년 5월)부터 삼성 DeX를 지원한다. 파라미터는
--flex-display --new-display5. 장점
앱플레이어가 아닌 미러링 도구라, 실제 스마트폰으로 구동하는 것과 같다. Windows, macOS, Linux 등 어느 OS에서도 호환성 100%이다.ARM 변환 지원이 설치되고 안드로이드 버전도 최신인 쓸 만한 안드로이드 앱 플레이어가 없는 리눅스에서 플레이할 수 있는 유일한 대안이다.
앱플레이어와는 다르게 가상 머신을 일부러 막는 앱에서도 실행율 100%이다.
PC에서는 화면/사운드 수신 및 재생을 위한 리소스만을 사용하기 때문에 셀러론급 저사양 컴퓨터에서도 조금 끊기긴 하지만 리소스 누수 걱정 없이 작동된다.
스팀판, 모바일판의 차이가 없는 게임의 경우, PC가 다른 작업 등으로 바쁠 시 모바일판으로 구동하면 더 빠르다.
6. 단점
게임구동+화면 인코딩+USB 3.x를 모두 소화할 수 있는 안드로이드 스마트폰이 필요하다.앱플레이어에 비해 화질 저하 및 프레임이 끊긴다. 원활하게 구동하려면 PC, 케이블, 스마트폰 모두 USB 3.x 이상 지원이 필요하다.
화면을 코덱으로 압축하여 PC로 전송하고 PC 측에서 다시 압축해제를 하는 형식이라 필연적으로 지연이 발생한다. 프레임에 감각이 예민하지 않고 액션이 적거나 자동 전투가 있는 게임은 어느 정도 참을 수 있지만, 실시간 게임(액션, 리듬게임 등) 구동에는 추천하지 않는다. 프레임에 예민한 사용자의 경우 불쾌할 수 있다.
일부 보안이 요구되는 화면(잠금, SMS, 은행 앱, 그 외 기타 앱의 보안 처리 요구)은 검은 화면이 나올 수 있다. 안드로이드의 보안 정책이므로 이 때는 어쩔 수 없이 폰 화면을 보면서 폰을 직접 조작해야 한다.
7. 꿀팁
데스크탑 모드scrcpy --new-display 를 켜놓고, 모바일에는 Deckboard를 켜놓으면, 백그라운드에서는 게임을 구동하면서, 모바일 화면에는 버튼만 띄워놓아 스트림덱처럼 사용할 수 있다. 물리 버튼이 아니라 스트림덱 본연의 느낌은 살릴 수 없지만. 스마트폰이 PC와 같은 망의 와이파이 환경에서 상시 연결되어야 한다. Windows, Mac, Linux를 모두 지원한다. 하지만 버튼만 띄워놓으므로 화면 번인 자국이 남을 수 있어, 그냥 거치 모드로만 쓰는 공기기로 쓰자.[1] 이 버전은 Steam판을 제공하지 않고 공식에서는 뮤뮤 앱플레이어판을 제공하기 때문에 리눅스에서는 scrcpy 외에는 구동 불가능하다. 글로벌 버전은 이 버그가 없고 게다가 리눅스에서도 부드럽게 구동되는 Steam(Proton)판을 제공하기 때문에 이렇게 구동할 필요가 없다.