'Linux API/v4l'에 해당되는 글 3건

  1. 2017.04.19 v4l2 timestamp
  2. 2015.09.13 uv4l
  3. 2009.12.06 리눅스에 웹캠 연결시 인식 (5)
Linux API/v4l2017.04.19 18:14

timestamp는 카메라 따라 맘대로 라는 건데

하드웨어적으로 비디오 싱크를 맞추는 것도 아니니

스테레오 카메라를 위한 보조 기능으로 쓸수도 없을지도?


According to http://comments.gmane.org/gmane.linux.drivers.video-input-infrastructure/39892 some v4l2 drivers (including the UVC one) do not use the realtime clock (wall time) but rather a monotonic clock that counts from a not specified point in time. On Linux, this is the boot time (i.e. uptime), however (and I suspect this is the cause of your mismatch) only the time that the computer was actually running (i.e. this clock does not run when the computer is suspended). 

[링크 : http://stackoverflow.com/questions/10266451/where-does-v4l2-buffer-timestamp-value-starts-counting]

    [링크 : http://stackoverflow.com/questions/10261537/timestamp-for-v4l2-image-capture]

'Linux API > v4l' 카테고리의 다른 글

v4l2 timestamp  (0) 2017.04.19
uv4l  (0) 2015.09.13
리눅스에 웹캠 연결시 인식  (5) 2009.12.06
Posted by 구차니

댓글을 달아 주세요

Linux API/v4l2015.09.13 16:03

API는 아니지만 분류할 곳이 모호하니..


일단 라즈베리 파이에서 CSI를 통해 영상을 받아서 

kernel space v4l driver(offcial)로 받으려고 했던 노가다는 실패했는데

user space v4l로 하는 글들이 갑자기 잔뜩 보여서 나중에 시도할 예정..


엥? 인증키?

V4L2(Video4Linux2) 드라이버 활성화

pi@openmake ~ $ sudo modprobe bcm2835-v4l2


V4L2(Video4Linux2) 인증키 설치

pi@rasplay ~ $ wget http://www.linux-projects.org/listing/uv4l_repo/lrkey.asc && sudo apt-key add ./lrkey.asc


[링크 : http://www.rasplay.org/?p=6257] 

[링크 : http://www.rasplay.org/?p=6277]


How to install or upgrade UV4L on Ubuntu Raring Ringtail


To install UV4L open a terminal and type the following commands:

$ wget http://www.linux-projects.org/listing/uv4l_repo/lrkey.asc && sudo apt-key add ./lrkey.asc


Add the following line to the file /etc/apt/sources.list :

deb [arch=amd64] http://www.linux-projects.org/listing/uv4l_repo/raring/ raring main


$ sudo apt-get update

$ sudo apt-get install libfuse3 uv4l


Now the UV4L core component is installed. 


Optionally, each driver can be installed separately from the core module:


$ sudo apt-get install uv4l-uvc

$ sudo apt-get install uv4l-xscreen

$ sudo apt-get install uv4l-mjpegstream

[링크 : http://www.linux-projects.org/modules/sections/index.php?op=viewarticle&artid=12]


$ wget http://www.linux-projects.org/listing/uv4l_repo/lrkey.asc && sudo apt-key add ./lrkey.asc

$ sudo vi /etc/apt/sources.list

deb http://www.linux-projects.org/listing/uv4l_repo/raspbian/ wheezy main

$ sudo apt-get install uv4l uv4l-raspicam


$ sudo apt-get install uv4l-raspicam

패키지 목록을 읽는 중입니다... 완료

의존성 트리를 만드는 중입니다

상태 정보를 읽는 중입니다... 완료

다음 새 패키지를 설치할 것입니다:

  uv4l-raspicam

0개 업그레이드, 1개 새로 설치, 0개 제거 및 4개 업그레이드 안 함.

1,471 k바이트 아카이브를 받아야 합니다.

이 작업 후 3,890 k바이트의 디스크 공간을 더 사용하게 됩니다.

받기:1 http://www.linux-projects.org/listing/uv4l_repo/raspbian/ wheezy/main uv4l-raspicam armhf 1.9.31 [1,471 kB]

내려받기 1,471 k바이트, 소요시간 4초 (336 k바이트/초)

Selecting previously unselected package uv4l-raspicam.

(데이터베이스 읽는중 ...현재 80650개의 파일과 디렉터리가 설치되어 있습니다.)

uv4l-raspicam 패키지를 푸는 중입니다 (.../uv4l-raspicam_1.9.31_armhf.deb에서) ...

man-db에 대한 트리거를 처리하는 중입니다 ...

uv4l-raspicam (1.9.31) 설정하는 중입니다 ...


$ sudo apt-get install uv4l
패키지 목록을 읽는 중입니다... 완료
의존성 트리를 만드는 중입니다
상태 정보를 읽는 중입니다... 완료
다음 새 패키지를 설치할 것입니다:
  uv4l
0개 업그레이드, 1개 새로 설치, 0개 제거 및 4개 업그레이드 안 함.
558 k바이트 아카이브를 받아야 합니다.
이 작업 후 1,872 k바이트의 디스크 공간을 더 사용하게 됩니다.
받기:1 http://www.linux-projects.org/listing/uv4l_repo/raspbian/ wheezy/main uv4l armhf 1.9.8 [558 kB]
내려받기 558 k바이트, 소요시간 3초 (180 k바이트/초)
Selecting previously unselected package uv4l.
(데이터베이스 읽는중 ...현재 80640개의 파일과 디렉터리가 설치되어 있습니다.)
uv4l 패키지를 푸는 중입니다 (.../archives/uv4l_1.9.8_armhf.deb에서) ...
man-db에 대한 트리거를 처리하는 중입니다 ...

uv4l (1.9.8) 설정하는 중입니다 ... 


found this thread when searching for a hardware encoder, not for c920 issues.

[링크 : http://raspberrypi.stackexchange.com/questions/4412/streaming-h264-with-logitech-c920] 


if you try ffmpeg instead of vlc for playback, you will probably encounter this problem: https://ffmpeg.org/trac/ffmpeg/ticket/1387

[링크 : https://wiki.matthiasbock.net/index.php/Logitech_C920,_streaming_H.264]




결론은.. v4l firmware 쪽의 문제로 업데이트 하고 그러라는데..

재발된건지..알수가 없다. 대부분 스트리밍을 위해서 cvlc로 live 영상 없이 하다 보니.. 차이점이 보이기도 하고

pi-cam과 usb webcam의 차이인거 같기도 하고...

'Linux API > v4l' 카테고리의 다른 글

v4l2 timestamp  (0) 2017.04.19
uv4l  (0) 2015.09.13
리눅스에 웹캠 연결시 인식  (5) 2009.12.06
Posted by 구차니

댓글을 달아 주세요

Linux API/v4l2009.12.06 19:41
  [CAMEL PC-100 : http://blog.danawa.com/prod/?prod_c=956003]
  [더불정보기술 X-LUK DBC-UP : http://blog.danawa.com/prod/?prod_c=911980]

위에 두녀석을 다시 꼽아 보니 둘다 video0가 생성이 된다.
CAMEL PC-100은 내장 마이크/사운드 장치가 있고
X-LUK DBC-UP은 내장 마이크 조차 없는 녀석이다(단지 PC용 monitor 프로그램이 있어서 산것일뿐 ㄱ-)

아무튼 /dev를 비교해보니 아래와 같이 추가가 되었다.

 CAMEL PC-10  더불정보기술 X-LUK DBC-UP
/dev
crw-rw----+ 1 root audio    14,  20 2009-12-06 19:22 audio1
crw-rw----+ 1 root audio    14,  19 2009-12-06 19:22 dsp1
crw-rw----+ 1 root audio    14,  16 2009-12-06 19:22 mixer1
drwxr-xr-x  4 root root          80 2009-12-06 19:22 v4l
crw-rw----+ 1 root video    81,   0 2009-12-06 19:22 video0

~$ tree /dev/v4l
/dev/v4l
|-- by-id
|   `-- usb-ARKMICRO_USB2.0_PC_CAMERA-video-index0 -> ../../video0
`-- by-path
    `-- pci-0000:00:10.4-usb-0:3:1.0-video-index0 -> ../../video0
/dev



drwxr-xr-x  4 root root          80 2009-12-06 19:30 v4l
crw-rw----+ 1 root video    81,   0 2009-12-06 19:30 video0

$ tree /dev/v4l
/dev/v4l
|-- by-id
|   `-- usb-Vimicro_Corp._PC_Camera-video-index0 -> ../../video0
`-- by-path
    `-- pci-0000:00:10.1-usb-0:1:1.0-video-index0 -> ../../video0

아무튼, video0 장치는 둘다 생기고, video4linux 장비로 인식을 한다. (ffmpeg이 왜 안되는겨 ㅠ.ㅠ)


CAMEL PC-10
$ ffmpeg -y -f video4linux -r 30 -s 320x240 -i /dev/video0 http://localhost:8090/feed1.ffm
FFmpeg version SVN-r19352-4:0.5+svn20090706-2ubuntu2, Copyright (c) 2000-2009 Fabrice Bellard, et al.
  configuration: --extra-version=4:0.5+svn20090706-2ubuntu2 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --disable-stripping --disable-vhook --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libdc1394 --extra-cflags=-I/build/buildd/ffmpeg-0.5+svn20090706/debian/include --enable-shared --disable-static
  libavutil     49.15. 0 / 49.15. 0
  libavcodec    52.20. 0 / 52.20. 0
  libavformat   52.31. 0 / 52.31. 0
  libavdevice   52. 1. 0 / 52. 1. 0
  libavfilter    0. 4. 0 /  0. 4. 0
  libswscale     0. 7. 1 /  0. 7. 1
  libpostproc   51. 2. 0 / 51. 2. 0
  built on Oct 13 2009 22:15:16, gcc: 4.4.1
[video4linux @ 0x85222c0]VIDIOCSWIN: Bad address
/dev/video0: I/O error occurred
Usually that means that input file is truncated and/or corrupted.


더불정보기술 X-LUK DBC-UP
$ ffmpeg -y -f video4linux -r 30 -s 320x240 -i /dev/video1 http://localhost:8090/feed1.ffm
FFmpeg version SVN-r19352-4:0.5+svn20090706-2ubuntu2, Copyright (c) 2000-2009 Fabrice Bellard, et al.
  configuration: --extra-version=4:0.5+svn20090706-2ubuntu2 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --disable-stripping --disable-vhook --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libdc1394 --extra-cflags=-I/build/buildd/ffmpeg-0.5+svn20090706/debian/include --enable-shared --disable-static
  libavutil     49.15. 0 / 49.15. 0
  libavcodec    52.20. 0 / 52.20. 0
  libavformat   52.31. 0 / 52.31. 0
  libavdevice   52. 1. 0 / 52. 1. 0
  libavfilter    0. 4. 0 /  0. 4. 0
  libswscale     0. 7. 1 /  0. 7. 1
  libpostproc   51. 2. 0 / 51. 2. 0
  built on Oct 13 2009 22:15:16, gcc: 4.4.1
Input #0, video4linux, from '/dev/video1':
  Duration: N/A, start: 1260102822.110153, bitrate: 27647 kb/s
    Stream #0.0: Video: rawvideo, yuv420p, 320x240, 27647 kb/s, 30 tbr, 1000k tbn, 30 tbc
Output #0, ffm, to 'http://localhost:8090/feed1.ffm':
    Stream #0.0: Video: mpeg1video, yuv420p, 320x240, q=3-31, 512 kb/s, 1000k tbn, 30 tbc
Stream mapping:
  Stream #0.0 -> #0.0
Press [q] to stop encoding
[mpeg1video @ 0x9940160]rc buffer underflow
VIDIOCMCAPTURE: Invalid argument
frame=    1 fps=  0 q=31.7 Lsize=      12kB time=10000000000.00 bitrate=   0.0kbits/s
video:8kB audio:0kB global headers:0kB muxing overhead 54.352468%



2010.02.18 추가

열화와 같은 성원(?)으로 드라이버 및 프로그램을 올려 놓습니다.
X-LUK DBC-UP 에는 xp용 드라이버와 감시프로그램이
vista 에는 vista용 드라이버가 들어있습니다.


'Linux API > v4l' 카테고리의 다른 글

v4l2 timestamp  (0) 2017.04.19
uv4l  (0) 2015.09.13
리눅스에 웹캠 연결시 인식  (5) 2009.12.06
Posted by 구차니

댓글을 달아 주세요

  1. 비밀댓글입니다

    2010.02.15 11:34 [ ADDR : EDIT/ DEL : REPLY ]
  2. 비밀댓글입니다

    2010.02.17 23:46 [ ADDR : EDIT/ DEL : REPLY ]
  3. 비밀댓글입니다

    2012.05.17 23:01 [ ADDR : EDIT/ DEL : REPLY ]
    • vista 드라이버를 설치해보시기 바랍니다.
      win7이나 vista나 동일한 드라이버를 사용합니다.

      2012.05.18 08:50 신고 [ ADDR : EDIT/ DEL ]