우분투에서 USB카메라 보기

좋은 프로그램, 한글화 파일, 그외 유용한 자료들

Moderator: Dry8r3aD

Post Reply
User avatar
taba
Posts: 87
Joined: 2012/03/31 Sat 8:32 pm

우분투에서 USB카메라 보기

Post by taba » 2012/11/10 Sat 12:10 am

안녕하세요. 제가 책을 보다가 재미있는 코드가 소개합니다. 출처는 "우분투환경에서 배우는 리눅스C프로그래밍"이라는 책에서 나온 내용입니다.
해당코드는 unicap와 GTK+라이브러리를 이용한 프로그램으로 우분투환경에서 위젯창을 뛰워서 카메라에 비춰지는 화면을 보여주는 코드입니다. UVC규격의 USB2.0지원 카메라가 필요하다고 하는데, 제가 실행한 환경은 노트북의 Cam을 이용하여 실험했습니다.당연하겠지만 라이브러리가 필요하고 해당 라이브러리를 설치하시면 됩니다. 그리고, 책에 대해서 설명하자면 한번 빌려서 보시면 재미있는 내용이 많을겁니다. ㅎㅎ
[code:3ikwzb7w]
libgtk2.0-dev
libunicapgtk2-dev
[/code:3ikwzb7w]
라이브러리가 정확히 맞는줄 모르겠는데, 코드의 헤더명과 컴파일명령에서 아래와 같이 패키지를 검색해서 설치하시면 도움이 될겁니다.
apt-cache search [검색어]

이제 소스코드입니다.
[code:3ikwzb7w]
//list1414B.c
#include <unicap.h>
#include <unicapgtk.h>

int
main (int argc, char* argv[])
{
GtkWidget* window;
GtkWidget* ugtk_display;

gtk_init (&argc, &argv);

window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
g_signal_connect (G_OBJECT (window), "destroy",
G_CALLBACK (gtk_main_quit), NULL);

ugtk_display = unicapgtk_video_display_new_by_device (NULL);
gtk_container_add (GTK_CONTAINER (window), ugtk_display);
unicapgtk_video_display_start (UNICAPGTK_VIDEO_DISPLAY (ugtk_display));

gtk_widget_show_all (window);

gtk_main ();

return 0;
}

[/code:3ikwzb7w]
코드를 저장하셨다면, 컴파일을 합니다.
[code:3ikwzb7w] gcc list1414B.c -o cature `pkg-config libunicapgtk --cflags --libs`[/code:3ikwzb7w]

Post Reply