최대 1 분 소요

라즈베리 파이로 프로젝트를 하다보면 하나의 카메라를 이용해서 AI도 돌리고 싶고 스트리밍도 하고 싶을때가 있다.

관련해서 조금 삽질해 보니 가능해서 정리해 본다.

일단 재료는 라즈베리파이, camera 정도고… v4l2loopback package와 ffmpeg 을 사용할 예정이다.

v4L2loopback : github link

ffmpeg multidevice : link

v4l2loopback을 설치하고 (github 에 가보면 sourcecode로 인스톨 하는 방법도 있고 apt로 인스톨 하는 방법도 있다.)

부팅후

sudo depmod -a

sudo modprobe v4l2loopback video_nr=3,4 card_label=”ai”,”streaming”

ffmpeg -f v4l2 -i /dev/video0 -codec copy -f v4l2 /dev/video3 -codec copy -f v4l2 /dev/video4

이렇게 하고 video3, video4를 이용하면된다.

특이한 사항 : AI 한다고 python code를 돌리던데.. 이상하게 원래 source( video0)를 연 후에 다시 ffmpeg으로 forward 한후에 열어야 되는 이상한 현상이.

해당 python code를 확인해 볼 예정이다.

streaming의 경우 vlc를 이용해서 gstreaming을 하면 되는데. ^^; 요건 나중에

참고자료

https://sysplay.in/blog/linux/2019/05/simultaneous-access-to-single-camera/

https://unix.stackexchange.com/questions/588118/why-can-multiple-consumers-access-a-single-v4l2-loopback-stream-from-a-webcam

https://askubuntu.com/questions/165727/is-it-possible-for-two-processes-to-access-the-webcam-at-the-same-time

  • 단어장에 추가
    • 다음에 대한 단어 목록이 없습니다영어 → 한국어…
    • 새로운 단어 목록 생성…
  • 복사