도와주세요!!
글 수 15,339
2006.04.04 10:36:40 (*.49.88.26)
6931
안녕하세요..
>3. 현재 진행해야 할 부분
> - 캠드라이버 설정하고 모듈을 적재하게 되면 캠에 led가 작동.(드라이버 설정이 잘 된것 같음)
> - dmesg 해도 major id를 알 수 없어요.
> - (캐리터디바이스 경우). mknod /dev/test c major minor
> - 캠 드라이버 ...?
===>> 캠 드라이버는 make menuconfig 옵션에서
Multimedia devices --->
<*> Video For Linux
를 설정하셨어 Video4Linux 를 사용합니다.
장치파일은
mknod /dev/video0 c 81 0
을 통해서 데이터를 가져와야 합니다.
> - command 환경에서 실행가능한 프로그램.
===>> mvc 라는 공개 프로그램이 있습니다.
강좌 >> 사용자 팁 >> 28 Logitech QuickCam Pro 4000 붙이기~ [2]
을 참조하세요.. ( 여기서 mvc, jpeg 부분만 참조하시면 됩니다.. )
jpeg 라이브러리 포팅시 ./configure 부분은 shared 로 하셔야 합니다.
# export CC= arm-linux-gcc
# export CXX= arm-linux-g++
# export AR= arm-linux-ar
# export LD= arm-linux-ld
# export RANLIB= arm-linux-ranlib
# ./configure --prefix=/usr/arm-linux --enable-shared
# make
# make install-lib
mvc-0.8.9.tar.gz
# vi depend.sh
2 CC=${CC-gcc} 를 다음과 같이 수정한다.
2 CC=arm-linux-gcc
# chmod 777 depend.sh
# ./depend.sh
WARNING: libjpeg NOT Found.
WARNING: libpng NOT Found.
# vi Makefile
5 CC = gcc 를 다음과 같이 수정한다.
5 CC = arm-linux-gcc
# vi depend.inc
LIBS= -ljpeg -L/usr/arm-linux/lib
CFLAGS=-O2 -Wall -g -I. -I/usr/arm-linux/include
DEFS= -DHAVE_JPEG
# vi mvc.c
468 if(myvid->palette == VIDEO_PALETTE_YUV420P){
469 convbuf = malloc(framesize);
470 v4l_yuv420p2rgb(convbuf, myvid->buf, myvid->width, myvid->height, myvid->depth * 8);
471 memcpy(myvid->buf, convbuf, framesize);
472 free(convbuf);
473 }
에서 468, 473 라인의 if 구문을 다음과 같이 주석처리한다.
468 // if(myvid->palette == VIDEO_PALETTE_YUV420P){
469 convbuf = malloc(framesize);
470 v4l_yuv420p2rgb(convbuf, myvid->buf, myvid->width, myvid->height, myvid->depth * 8);
471 memcpy(myvid->buf, convbuf, framesize);
472 free(convbuf);
473 // }
mvc은 타겟보드에서 다음과 같이 실행 하시면 됩니다.
$ mknod /dev/video0 c 81 0
$ ./mvc -f jpeg -C 10000
>
>4. 이 기능이 부팅되면서 모두 실행되어 합니다.
>캠,gpio 모듈 적재=>gpio 어플리케이션 실행.
>
==>> 타겟보드의 /etc/rc.d/rc.local 에 모두 설정하시면 됩니다.
그럼 수고하세요..
>3. 현재 진행해야 할 부분
> - 캠드라이버 설정하고 모듈을 적재하게 되면 캠에 led가 작동.(드라이버 설정이 잘 된것 같음)
> - dmesg 해도 major id를 알 수 없어요.
> - (캐리터디바이스 경우). mknod /dev/test c major minor
> - 캠 드라이버 ...?
===>> 캠 드라이버는 make menuconfig 옵션에서
Multimedia devices --->
<*> Video For Linux
를 설정하셨어 Video4Linux 를 사용합니다.
장치파일은
mknod /dev/video0 c 81 0
을 통해서 데이터를 가져와야 합니다.
> - command 환경에서 실행가능한 프로그램.
===>> mvc 라는 공개 프로그램이 있습니다.
강좌 >> 사용자 팁 >> 28 Logitech QuickCam Pro 4000 붙이기~ [2]
을 참조하세요.. ( 여기서 mvc, jpeg 부분만 참조하시면 됩니다.. )
jpeg 라이브러리 포팅시 ./configure 부분은 shared 로 하셔야 합니다.
# export CC= arm-linux-gcc
# export CXX= arm-linux-g++
# export AR= arm-linux-ar
# export LD= arm-linux-ld
# export RANLIB= arm-linux-ranlib
# ./configure --prefix=/usr/arm-linux --enable-shared
# make
# make install-lib
mvc-0.8.9.tar.gz
# vi depend.sh
2 CC=${CC-gcc} 를 다음과 같이 수정한다.
2 CC=arm-linux-gcc
# chmod 777 depend.sh
# ./depend.sh
WARNING: libjpeg NOT Found.
WARNING: libpng NOT Found.
# vi Makefile
5 CC = gcc 를 다음과 같이 수정한다.
5 CC = arm-linux-gcc
# vi depend.inc
LIBS= -ljpeg -L/usr/arm-linux/lib
CFLAGS=-O2 -Wall -g -I. -I/usr/arm-linux/include
DEFS= -DHAVE_JPEG
# vi mvc.c
468 if(myvid->palette == VIDEO_PALETTE_YUV420P){
469 convbuf = malloc(framesize);
470 v4l_yuv420p2rgb(convbuf, myvid->buf, myvid->width, myvid->height, myvid->depth * 8);
471 memcpy(myvid->buf, convbuf, framesize);
472 free(convbuf);
473 }
에서 468, 473 라인의 if 구문을 다음과 같이 주석처리한다.
468 // if(myvid->palette == VIDEO_PALETTE_YUV420P){
469 convbuf = malloc(framesize);
470 v4l_yuv420p2rgb(convbuf, myvid->buf, myvid->width, myvid->height, myvid->depth * 8);
471 memcpy(myvid->buf, convbuf, framesize);
472 free(convbuf);
473 // }
mvc은 타겟보드에서 다음과 같이 실행 하시면 됩니다.
$ mknod /dev/video0 c 81 0
$ ./mvc -f jpeg -C 10000
>
>4. 이 기능이 부팅되면서 모두 실행되어 합니다.
>캠,gpio 모듈 적재=>gpio 어플리케이션 실행.
>
==>> 타겟보드의 /etc/rc.d/rc.local 에 모두 설정하시면 됩니다.
그럼 수고하세요..