웹캠 및 화면 회전(세로 모드)

웹캠 및 화면 회전(세로 모드)

TL;DR: 내장 스크린 웹캠의 피드를 90도 회전할 수 있나요?

두 개의 화면 모니터가 있는데 하나는 가로 모드이고 다른 하나는 세로 모드입니다. 웹캠은 "세로" 모니터에 있고 "가로" 모니터에는 회전 기능이 없습니다(그래서 전환할 수 없습니다). 두 번째 화면의 디스플레이는 xrandr을 사용하여 arandr을 통해 회전됩니다. 그러나 웹캠은 여전히 ​​물리적인 회전이 없는 것처럼 캡처하는데, 이는 화상회의에 문제가 됩니다. 비디오 소스를 조정하는 방법을 원합니다운전자 수준에서이렇게 하면 다른 응용 프로그램에서 사용할 수 있습니다.

v4l2-ctl을 사용해 보았지만 "회전" 기능을 찾을 수 없었습니다(비록 대비/색조/등 구성 옵션이 많이 있음에도 불구하고). 나는 사용할 수 있다

내 배포판은 Archlinux이지만 여기서는 관련이 없다고 생각합니다. 세로 화면은 필립스 271P4Q입니다. 통합 웹캠용 Lsusb 출력: Bus 001 Device 005: ID 04ca:7054 Lite-On Technology Corp.

할 일이 없다면하지만, 또한 상황을 개선하기 위해 이 문제를 누구에게 보고할 수 있는지 알고 싶습니다(Xorg 개발자? Linux 커널 개발자?).

이에 대한 의견을 보내주셔서 감사합니다.

답변1

설명된 대로 이 작업을 수행할 수 있습니다.여기. 설치 modprobev4l2 루프백모듈(컴파일해야 할 수도 있음)을 사용하여 새 비디오 장치를 만든 다음 다음을 통해 웹캠 비디오 스트림을 해당 장치에 복사합니다 ffmpeg.

ffmpeg -f v4l2 -i /dev/video0 -vf transpose=1 -f v4l2 /dev/video1

답변2

1) 유틸리티를 설치합니다:

$ sudo apt-get update
$ sudo apt-get install v4l-utils
$ sudo apt-get install v4l2loopback-utils

2) 다운로드v4l2 루프백

3) "v4l2loopback-master" 폴더의 압축을 푼다

4) v4l2loopback 모듈을 컴파일합니다:

$ make

5) 설치:

$ sudo make install

6) 장치를 활성화합니다:

$ sudo modprobe v4l2loopback exclusive_caps=1

7) 장치가 활성화되어 있는지 확인하십시오.

$ v4l2-ctl --list-devices

Dummy video device (0x0000) (platform:v4l2loopback-000):
  /dev/video1

USB2.0 UVC 2M WebCam: USB2.0 UV (usb-0000:00:1a.0-1.2):
  /dev/video0

8) ffmpeg를 통해 웹캠 비디오 스트림을 복사합니다.

$ ffmpeg -f v4l2 -i /dev/video0 -vf "transpose=1,format=yuv420p" -f v4l2 /dev/video1

매개변수에 대한 자세한 내용을 볼 수 있습니다.

https://ffmpeg.org

https://www.ostechnix.com/20-ffmpeg-commands-beginners/

https://github.com/qTox/qTox/wiki/Video

관련 정보