댓글 쓰기 권한이 없습니다. 로그인 하시겠습니까?
Android
2021.08.18 11:05
안드로이드 스마트 폰 화면 미러링: scrcpy 사용법
조회 수 40730 댓글 0
출처: https://kibua20.tistory.com/138 github: https://github.com/Genymobile/scrcpy 안드로이드 화면 미러링 앱은 PlayStore에도 많지만 광고가 포함된 유료 앱도 많아 무료로 사용할 수 있는 오픈 소스 기반을 scrcpy를 설명하고자 합니다.
scrcpy 활용 예
scrcpy 특징
scrcpy의 설치 방법 및 활용 방법은 아래 동영상에 잘 설명되어 있습니다.
1. scrcpy 설치 방법scrcpy 설치는 github 사이트에도 가능하고 apt로 설치가 가능합니다.
#우분투 설치 (v1.12버전이 설치됩니다. 최신 버전은 git hub에서 빌드 방법을 확인해주세요.) $ sudo apt install scrcpy
# Windows 설치: v1.17이 최신 버전입니다.
github.com/Genymobile/scrcpy/releases/download/v1.17/scrcpy-win64-v1.17.zip
※ V1.17의 변경 사항 은 github.com/Genymobile/scrcpy/releases/tag/v1.17 를 참고해주세요. V1.6 대비해서 ① Android 11에서 -- show-touches 와 --stay-awake 에러 수정, ②마우스 클릭 수정 (마우스 오른쪽 키는 Back키 삽입하고 Mid키는 홈키 삽입), ③ Copy-Paste 오류 수정, ④ screen off Work aroud 적용 ⑤ Encoder 옵션 적용 등이 개선되었다고 합니다.
★사전작업 - 스마트 폰에서 'adb 디버깅' 설정을 enable해야 함안드로이드 폰에 adb 연결 설정이 필요합니다. 안드로이드 폰에서 개발자 메뉴의 USB 디버깅을 Enable 해야 합니다. 안드로이드 폰 시스템 설정 > 소프트웨어 정보 > 빌드 번호를 3번 이상 클릭하여 '개발자 메뉴'를 활성화하고 하고, 개발자 메뉴에서 'USB 디버깅' 메뉴를 활성화해야 합니다. 상세 내용은 링크를 확인해주세요.
adb 처음 연결하는 경우 'USB 디버깅을 항상 허용할까요' 라는 팝업을 표시하고 이때 '확인' 버튼을 눌러야 합니다.
안드로이드 폰에서 설정이 정상적으로 되었다면 PC와 연결 후 adb devices 명령어로 Device ID 확인이 가능해야 합니다.
$ adb devices List of devices attached
2. scrcpy 실행scrcpy를 실행하면 아래와 같이 핸드폰 화면이 미러링 됩니다. 이 상태에서 USB Audio를 통해서 소리도 전달되면 PC에서 마우스 및 키보드 전달도 가능합니다.
3. 실행 옵션scrcpy를 실행 옵션은 아래와 같습니다. USB 연결에서는 특별한 옵션이 필요 없고, WiFi 연결 시에서는 bitrate과 fps조절이 필요합니다.
--always-on-top Make scrcpy window always on top (above other windows). --crop width:height:x:y Crop the device screen on the server. The values are expressed in the device natural orientation 4. 화면 녹화스마트 폰 화면을 MP4 동영상으로 화면 녹화가 가능합니다.
$ scrcpy --record file.mp4 (또는 file.mkv)
#화면 미러 없이 저장. Ctrl+C로 끝냄 $ scrcpy --no-display --record file.mp4 scrcpy -Nr file.mkv # interrupt recording wit
4. WiFi 연결 상태에서 화면 미러링adb의 WiFi 연결 기능을 활용해서 미러링이 가능합니다. 스마트 폰을 PC와 같은 공유기에 연결하고 「스마트 폰의 IP 주소」로 연결해야 합니다. 2. 스마트폰을 컴퓨터에 USB로 연결하고, 터미널 (or cmd 창)에서 아래 명령어를 입력해주세요. $ adb tcpip 5555 (성공 시) : restarting in TCP mode port: 5555 * 매번 USB연결이 귀찮다면 setprop $ adb shell setprop service.adb.tcp.port 5555
3. 스마트 폰의 USB 연결을 해제하고 터미널에서 아래 명령어로 무선 연결 $adb connect <Smart Phone IP>:5555 * 스마트폰 설정 > 휴대폰 정보 > IP주소 메뉴에서 연결된 IP 주소 확인 가능합니다. 또는 터미널에서 $ adb shell ifconfig 명령어로 확인 가능합니다.
4. PC에서 scrcpy 실행, 무선 연결 상태에서 bitrate을 낮게 설정해야 화면 delay가 없습니다. $ scrcpy --bit-rate 2M --max-size 800 $ scrcpy -b2M -m800
모바일 네트워크 확인 - 미지원모바일 네트워크에서 테스트하면 아래와 같이 사설IP와 공인IP모두 adb로 연결이 안됩니다. adb자체가 지원하지 않을 수 있고 통신사의 Gateway에서 막혀 있을 수 있을 것 같네요. 연결 방법을 찾으시는 분은 댓글로 남겨주세요.
댓글 중에 VPN으로 성공한 사례가 있어 내용을 추가합니다. PC-공유기를 동일한 망에 놓고 공유기의 VPN을 통해서 모바일 네트워크로 연결하면 가능하다고 합니다.
한글 입력 확인 - 버그는 있지만 지원함scrcpy 에서 한글 입력이 일부 화면에서는 한글 입력 시 server 에러 메시지를 출력하면서 입력이 되지 않습니다. 하지만, 한글 입력기 (IME)을 띄운 상태에서 PC에서 한글 입력 시 정상적으로 입력이 가능합니다. (※알키보드 사용시에도 잘 동작한다고 함)
화면 끄고 켜기스마트 폰 화면은 Off 상태에서 PC 화면만 미러링하는 경우에는 -S 옵션으로 실행하고, LCD off 상태에서는 마우스 오른쪽 Key로 누르면 다시 켜집니다.
# 스마트폰 LCD off 하고 PC 미러링 화면만 켜기 $ scrcpy -S
# Display off상태에서 다시 on하는 경우 # 마우스 오른쪽 키
화면 끄고 켜기스마트 폰 화면은 항상 켜져 있는 상태를 유지하기 위해서는 -W을 사용할 수 있습니다. Display off 시 잠금 화면을 해제하는 것이 가끔 불편할 수 있습니다. 스마트 폰과 USB를 연결한 상태에서 저속 충전(500mA) 수준으로 충전하고 있어 장시간 사용 가능합니다.
# 스마트폰 Alwayse on $ scrcpy -W
윈도우 사이즈 조절PC에서 미러링하는 화면이 너무 큰 경우 아래와 명령어로 사이즈 조절이 가능합니다. Aspect ratio은 유지하고 화면 크기를 조정합니다. 기본 값을 0 (unlimited) 입니다. $scrcpy --max-size 860 단축키 일람: (출처)
¹Double-click on black borders to remove them. ²Right-click turns the screen on if it was off, presses BACK otherwise. ³Only on Android >= 7.
5. scrcpy GUI 버전scrcpy fork 중에서는 GUI 버전이 있어 소개합니다. scrcpy-gui의 Git Hub사이트에서 다운로드 가능합며 설치 파일은 링크에서 다운로 할 수 있습니다.
#우분투에서 설치 $ sudo apt-get install gconf2 libappindicator1 $ sudo dpkg -i ScrcpyGui-1.5.1.deb
6. SCRCPY 소리 미러링scrcpy 자체로는 사운드 미러링을 지원하고 있지 않습니다. Sound 미러링은 sndcpy를 사용해야 합니다. scrcpy와 sndcpy는 동시에 사용 가능합니다. sndcpy를 사용하기 위해서는 PC 에 VLC가 미리 설치되어 있어야하고 Android 10 (Q-OS)부터 가능합니다. sndcpy에 대한 설명은 아래 포스팅을 확인해주세요. Dreamy의 코드 스크랩내가 모으고 내가 보는
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Designed by sketchbooks.co.kr / sketchbook5 board skin
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5