웹캠의 잘린 버전인 v4l2 장치를 만드는 방법은 무엇입니까?

웹캠의 잘린 버전인 v4l2 장치를 만드는 방법은 무엇입니까?

Logitech 웹캠 C930e가 있습니다 /dev/video0. jitsi와 같은 화상 회의에 사용할 수 있습니다. 그런데 이 웹캠으로 촬영한 영상은 높이가 너무 높고 폭이 너무 넓습니다. 나는 /dev/video0벽에 해변 그림이 표시되지 않는 "잘린" 버전을 원합니다 .

v4l2먼저 성공하지 못한 채 이를 달성하기 위해 옵션을 설정해 보았습니다 .

$ v4l2-ctl -d /dev/video0 --get-cropcap
Crop Capability Video Capture:
    Bounds      : Left 0, Top 0, Width 640, Height 360
    Default     : Left 0, Top 0, Width 640, Height 360
    Pixel Aspect: 1/1

$ v4l2-ctl -d /dev/video0 --get-selection target=crop_bounds
Selection: crop_bounds, Left 0, Top 0, Width 640, Height 360, Flags:

$ v4l2-ctl -d /dev/video0 --set-selection target=crop_bounds,flags=crop,top=10,left=10,width=100,height=100
VIDIOC_S_SELECTION: failed: Inappropriate ioctl for device

v4l2loopback그러다가 또 다른 아이디어가 떠올랐습니다. 이를 사용하여 다른 장치를 만들 려고 했습니다 /dev/video2. 그 후에는 다음을 사용 하여 ffmpeg연결을 시도합니다 (참조/dev/video0/dev/video2https://github.com/umlaeute/v4l2loopback/wiki그리고https://video.stackexchange.com/questions/4563/how-can-i-crop-a-video-with-ffmpeg).

그래서 지금은 아이디어가 없습니다. 누구든지 조언을 해줄 수 있나요?

답변1

다음 줄은 루프백 비디오 장치를 만듭니다 /dev/video5. 나중에 에 연결하는 데 ffmpeg사용되지만 도중에 스트림을 클립하고 뒤집습니다./dev/video0/dev/video5

sudo apt-get install v4l2loopback-dkms 
sudo modprobe v4l2loopback video_nr=5
ffmpeg -i /dev/video0 -f v4l2 -pix_fmt yuv420p -filter:v "hflip,crop=400:400:0:0" /dev/video5

관련 정보