안드로이드 자동화 어플 tasker를 알게되었고
tasker를 파다보니 sl4a라는 안드로이드에서 돌아가는 스크립트 환경을 알게되었다.

그러다가 발견하게 된 것이5분 투자하여 안드로이드 스마트폰을 원격 감시카메라로 만드는 방법이란 글이었다.
위의 원문은 일본어로 막상 접속해보니 블로그가 좀 이상해 접속하면 계속 리플레시 되곤 했다.

그래서 소스보기로 하여 웹페이지를 불러와 해당 내용대로 따라해보니..
헐...
정말 간단하게 내 옵티머스 LTE2가 원격 감시카메라로 탄생했다!
비록 실시간 동영상이 아닌 원할 때마다 웹브라우저를 통해 실시간으로 사진이 전송되는 방식이지만 그래도 신기신기.

물론 시간을 따져보니 5분만에 안드로이드 스마트폰을 원격 감시카메라로 만드는건 전제 조건이 따랐다.
그것은 다름아닌 이미 소스가 동작할 환경이 셋팅되어있어야 한다는 것

혹시 자신이 쓰고 있는 안드로이폰을 원격 감시카메라로 셋팅하고픈 분이나
호기심이 많은 분이라면 아래의 셋팅방법을 살펴보시라.

일단 간단한 설명을 위하여
안드로이드 폰과 사진을 확인하려는 컴퓨터가 서로 같은 네트워크(공유기)에 묶여있다고 가정하고
안드로이드폰은 공유기와 무선랜으로 접속되어 있는 상태,
또한 공유기와 접속된 안드로이드 폰의 IP를 알고 있다는 가정하에 설명한다.


일단 환경부터 셋팅하자.

원래는 파이썬이란 프로그래밍 언어에 관한 지식 및 기타 안드로이드 스마트폰 API에 관한 여러가지의 지식이 필요하지만 이런거 저런거 다 빼고 걍 따라하기 방식으로 설명하겠다.

  1. 안드로이드에서 파이썬 프로그램을 돌릴 수 있는 SL4A를 다운로드 받아 설치
  2. SL4A 실행 - 메뉴에서 View 선택 - Interpreters 선택
  3. 화면 바뀌면 다시 메뉴 선택 - Add 선택 - 뜨는 창에서 Python 선택 후 다운로드 및 설치

소스 입력

아래의 파이썬 소스를 메모장이나 택스트 에디터로 붙여 넣은 후 remote_camera.py라는 파일로 저장한다.

remote_camera.py
import android
from wsgiref.simple_server import make_server

droid=android.Android()
pic='/sdcard/snapshot.jpg'

def camera(env,res):
  if env['PATH_INFO']=='/':
    droid.cameraCapturePicture(pic)
    res('200 OK',[('Content-type','image/jpeg')])
    return [file(pic).read()]

httpd=make_server('',9998,camera)
httpd.serve_forever()

remote_carema.py 파일을 안드로이드 스마트폰 /sdcard/sl4a/script 폴더에 저장


원격 웹캠 실행

이제 실행시키는 일만 남았다.
  1. SL4A를 실행하고
  2. 메뉴버튼 -> View -> Interpreters 선택
  3. 다시 메뉴버튼 -> Start Server -> Public 선택
  4. 3번까지 실행하면 안드로이드 스마트폰에서 웹서버가 돌아가는 상태가 된다.
안드로이드 스마트폰 웹캠 만들기 - 2번에 관한 설명

안드로이드 스마트폰 웹캠 만들기 - 2번에 관한 설명

안드로이드 스마트폰 웹캠 만들기 - 3번에 관한 설명

안드로이드 스마트폰 웹캠 만들기 - 3번에 관한 설명

이 상태에서 이전에 /sdcard/sl4a/ 폴더에 저장해둔 remote_camera.py 파일을 선택하여 실행한다(파일 선택 후 검은창 아이콘 클릭)

그리고 무선랜으로 연결된 안드로이드 스마트폰의 IP를 아래와 같이 같은 망에 묶인 컴퓨터에 쳐보면..
http://안드로이드폰IP:9998

브라우저에서 안드로이드폰에 접속하면 사진이 찍히고 이 사진이 바로 브라우저로 전송된다.- 원본블로그에서 업어온 사진

브라우저에서 안드로이드폰에 접속하면 사진이 찍히고 이 사진이 바로 브라우저로 전송된다.- 원본블로그에서 업어온 사진

위의 사진에서 보는바와 같이 브라우저에서 안드로이드 카메라로 찍힌 사진을 바로 확인할 수 있다.
이후 브라우저를 새로고침하거나 F5키를 누르면 마찬가지로 그때마다 새로 찍힌 사진이 브라우저로 전송된다.

또한 이번 튜토리얼은 설명을 간단히 하기 위해 같은 공유기 망에 묶인 것으로 설명하였지만
공유기의 DDNS 및 포트포워딩 기능을 활용하면 외출한 상태에서도 언제든지 안드로이드 폰을 설치해둔 곳의 상태를 원할 때 마다 체크 가능하다.


후기

처음에 이렇게 해보고 나서 얼마나 신기하던지..ㅋ
내 경우에야 이미 sl4a 실행 환경이 셋팅되어 있었기 때문에 빠른시간에 결과를 볼 수 있었지만
환경 셋팅에 얼마간의 시간이 좀 걸리더라도 관심있는 분이라면 한번 도전해보시길 빈다.

SL4A는 실제로 위에서 든 활용방법 외에도 기발한 활용방법이 많이 존재하니 파고드는 성격을 지니신 분이라면
충분히 흥미를 느낄 수 있을 것이다.

최근 한달간 인기글

이 글의 관련글

REPLY AND TRACKBACK RSS http://blog.nemesys.co.kr/tt/rss/response/1217
REPLY AND TRACKBACK ATOM http://blog.nemesys.co.kr/tt/atom/response/1217
TRACKBACK ADDRESS
이 글에는 트랙백을 보낼 수 없습니다
REPLY RSS http://blog.nemesys.co.kr/tt/rss/comment/1217
REPLY ATOM http://blog.nemesys.co.kr/tt/atom/comment/1217
나그네 
wrote at 2012/07/23 01:20
안녕하세요. 이 글 보고 한 번 따라해보았는데 안되는 점이 있어 질문 드립니다^^.

익스플로러에서 스마트폰 IP로 접속을 하니 스마트폰 카메라가 켜지면서 스마트폰에 카메라화면이 나타납니다. 브라우저에는 화면이 안 뜹니다. 한 3초 뒤에 카메라 찍히는 소리가 나고 그 찍힌 사진이 화면에서 안 없어집니다. 브라우저를 다시 새로고침해도 소용이 없구요.. 혹시 뭐 특별하게 하신 점 있으신가요..?ㅜㅜ 꼭 해보고 싶은데 안되니 정말 답답하네요. 혹시 익스플로러에서는 안되는건지요
Nes 
wrote at 2012/07/26 09:47
흠..
글쎄요.
제가 크롬에서 테스트해본 것이라서요.

아마 사진이 찍히는 과정까지 진행되었다면
거의 끝까지 셋팅을 마치셨다는 건데..

다른 브라우저로 확인을 해보시면 어떨까요?
 
wrote at 2012/07/26 12:02
저도 타블렛으로 시도해봤는데, 타블렛 화면에만 뜨고 브라우저에는 계속 연결중으로 뜨더라구요.
hoyong 
wrote at 2012/08/08 14:44
저좀 도와주세요 ㅠㅠ
카톡좀 해주세요
hoyong0218
 
wrote at 2012/08/17 17:37
만약 된다면 여러 면에서 악용 될 가능성도 있겠군요.
151 
wrote at 2012/08/27 09:16
안드로이드폰ip는 어디서 확인하나요?
음... 
wrote at 2012/09/03 10:51
나그네님 사진 저장 폴터를 변경해보세요
파일 저장 권한이 없어서 그런듯합니다.
해당폰에 사진 저장되는 위치로 변경해보세요
pic='/sdcard/snapshot.jpg'
에서
pic='/sdcard/DCIM/100MEDIA/snapshot.jpg'
ㄴㅇㄴㅇㄹ 
wrote at 2013/01/21 18:02
이걸 어플에다가 압축화시킨후에 섞어서 패킹해서 컴파일하면 망하겟네요 ㅋㅋ
lht 
wrote at 2013/04/21 10:35
익스플로러에서 스마트폰 IP로 접속이 않되요
알려주시면 감사 하겠습니다.
lht 
wrote at 2013/04/21 10:41
알려주세요!!!
sl4a 정상 구동 되고 remote_camera.py 까지 구동되는데
익스를러러에서 스마트폰으로 접속이 않되요
"Internet Explorer에서 웹 페이지를 표시할 수 없습니다. " 라고 뜨네요
Nes 
wrote at 2013/04/23 11:22
하나의 공유기에 컴과 스마트폰의 네트워크가 묶여야 합니다.
즉 스마트폰은 무선공유기와 와이파이로 연결되어야 하고 이때 스마트폰에 할당된 IP로 접근하셔야 해요~
qwe2asd 
wrote at 2013/05/01 19:32
좋은 포스팅 정말 잘보고 갑니다. 정말 굉장한 아이디어 이군요!
정말 여러 방면에 다양하게 활용할 수 있다고 생각 됩니다.
조금더 궁금한게 있어서 말인데 혹시 그 실시간 감시 방식을 사진 전송 방식이 아니라
실시간 동영상 방식으로도 가능할지 정말 번거로우시겠지만 여쭈어 봅니다.
글쓴이 분께서도 고민 해보셨을 거라고 생각됩니다. 방법이 있다면 알려주실 수 있으신지 부탁드립니다^^
Nes 
wrote at 2013/05/01 20:57
앱 종류로는 이미 CCTV 형식으로 활용가능한 방법이 나와있습니다.

http://cafe.naver.com/ilikeoldphone/13

여기 카페의 게시글을 참고 바랍니다.
다미마리 
wrote at 2013/06/25 16:51
웹페이지가 안됀대요 같은 인터넷 인데요......
앙중홍 
wrote at 2015/05/23 12:17
다 성공했습니당
근데 사진은 안찍고 그냥 카메라로 보이는것은 안되나요?
이름 / Name : *
비밀번호 / Password : *
홈페이지 / Homepage :
비밀글 / Secret :
*1  ... *191  *192  *193  *194  *195  *196  *197  *198  *199  ... *1133 
  • 블로그 주인장 : Nes
  • 이메일 : [email protected]
  • 이 블로그는?
  • 방명록
  • 레퍼런스 사이트 : http://nemesys.co.kr
SNS + RSS Links
rss
다음 일간 이슈 검색어
Since 2006 Nes's Random Blogz
Total 10868532 T559 Y1059

1718

1395

google chart api graph

-30 days

today : 559

전체 (1133)
Nes이야기 (123)
하드웨어이야기 (260)
소프트웨어이야기 (27)
외국어이야기 (12)
IT/웹이야기 (248)
연예계/방송이야기 (145)
게임이야기 (96)
광고/제품이야기 (58)
여행/먹거리이야기 (45)
세상이야기 (98)
최근에 쓴 글
구글 딥마인드 알파고가 이세돌을 꺾은날, 애드센스로 ...
구글 설문지(구글 폼)에서 정규식으로 입력 내용 사전 ... (1)
유플러스 tv g 4k uhd 셋톱박스를 신모델인 tvg 우퍼2... (9)
신장의 야망 창조 전국입지전 - 삼국지 13의 재미를 뛰... (2)
구글 애널리틱스(Google Analytics) 보고서 및 대시보...
그래픽카드 견적을 뺀 이번 조립컴퓨터, 스카이레이크 ... (1)
기어s 웨어러블 요금제로도 올레 맴버쉽 포인트 사용이...
안드로이드 롤리팝 포팅 버전 기어s 3g 요금제 가입 후... (2)
tasker http post 기능을 활용해 스마트폰 이벤트를 sl...
삼국지13 간단 후기 - 역대 장수제 시리즈의 정점을 찍...
네이버 웹마스터도구에 블로그와 RSS 주소 등록 후 10...
네이버 웹마스터도구 개편이 불러온 검색로직 및 트래...
삼성 갤럭시 기어s 롤리팝 포팅 후기 및 앱 사용기 (1)
삼성 갤럭시 기어s에 안드로이드 롤리팝 올리기 성공! (3)
CPU 잡아먹는 어베스트 avast mft utility(mftutil.exe...
유플러스 TVG 롤리팝 업데이트 후기(via 기기교체!!) (1)
블로그 포스팅이 점점 줄어드는 이유
u+ tv g 롤리팝 업데이트를 하릴없이 기다리며 써본 간... (9)
허니버터칩은 과연 꼬꼬면의 숙명을 피할 수 있을 것인가? (3)
LG유플러스 U+ tvg 4K UHD 간단 사용기 및 신구형 셋톱... (2)
구글 애널리틱스 웹로그 분석 공인 전문가 자격 인증 ...
스마트폰 사용 패턴 통계 및 분석 with Tasker & Googl... (5)
갤럭시 기어1 - 루팅 및 안드로이드 null롬 올린 후 두... (1)
옵티머스G프로 킷캣 업데이트 후 폰트변경 - 나눔바른...
갤럭시 기어1 - 루팅 및 안드로이드 커스텀 롬 사용기 ... (5)
구글 애널리틱스 UA 업그레이드 이후 애드센스 통계 안...
스마트폰 화면 밝기 어둡게해 야밤에 시력 보호하는 방법 (1)
블루투스 휴대용 스피커 로지텍 UE Boom 간단 리뷰 및 ...
구글 스프레드시트가 canvas를 활용해 만들어졌다니!! (1)
구글 드라이브 스프레드시트(엑셀)의 놀라운 기능 impo...