udev
규칙을 사용하여 USB 웹캠이 연결되는 시기를 감지 한 다음 systemd
FFmpeg/FFplay 웹캠 스트림을 시작하는 스크립트를 실행하는 서비스를 시작하는 웹캠 뷰어를 설정했습니다 . FFmpeg를 설정 DISPLAY=:0
하고 시작하기 XAUTHORITY=/home/pi/.Xauthority
전의 스크립트 에서 FFmpeg의 스트리밍이 매우 제대로 실행되지 않는 것을 확인했습니다 (Pi Zero W < 1fps).
Pi Zero WI에서는 이것이 무시되고 웹캠이 연결되면 제대로 실행되지만 Pi 4 4GB에서는 이러한 환경 변수가 설정되지 않으면 웹캠 뷰어가 나타나지 않습니다. 로그는 말했다 XDG_RUNTIME_DIR not set in the environment
. 이러한 변수 없이 Zero W에서는 스트림이 제대로 작동하지만 Pi 4에서는 전혀 작동하지 않는 이유는 무엇입니까? 더 좋은 점은 이러한 변수를 설정한 후 FFmpeg가 왜 그렇게 심하게 실행됩니까?
Pi 4에서 이러한 변수를 설정하는 것은 FPS에 영향을 미치지 않는 것 같습니다.
답변1
이 문제는 Raspberry Pi OS Bullseye로 업데이트한 후 해결된 것 같습니다. 모든 하드웨어에 비디오 드라이버가 통합되었기 때문일 가능성이 높습니다. 불행히도 Pi Zero W의 성능은 Bullseye에서 더 나쁩니다. 아 글쎄.