저는 유럽에 거주하며 깜박임을 방지하려면 전력선 주파수 설정을 50Hz로 변경해야 하는 Logitech C920 웹캠을 구입했습니다. 다음 지침을 사용하여 수행했습니다.
/usr/bin/v4l2-ctl --d /dev/video0 --set-ctrl power_line_frequency=1
이것은 잘 작동합니다. 심지어 규칙을 사용하여 지속되도록 만들었습니다 udevadm
.
SUBSYSTEM=="video4linux", KERNEL=="video[0-9]*", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="08e5", RUN+="/usr/bin/v4l2-ctl -d $devnode --set-ctrl=power_line_frequency=1"
v4l2-ctl -d /dev/video0 --list-ctrls
시스템을 재부팅하거나 웹캠 USB를 분리한 후 다음 출력이 제공되므로 이 방법도 작동하는 것 같습니다 .
brightness 0x00980900 (int) : min=0 max=255 step=1 default=128 value=128
contrast 0x00980901 (int) : min=0 max=255 step=1 default=128 value=128
saturation 0x00980902 (int) : min=0 max=255 step=1 default=128 value=128
white_balance_temperature_auto 0x0098090c (bool) : default=1 value=1
gain 0x00980913 (int) : min=0 max=255 step=1 default=0 value=0
power_line_frequency 0x00980918 (menu) : min=0 max=2 default=2 value=1 (50 Hz)
white_balance_temperature 0x0098091a (int) : min=2800 max=7500 step=1 default=5000 value=5000 flags=inactive
sharpness 0x0098091b (int) : min=0 max=255 step=1 default=128 value=128
backlight_compensation 0x0098091c (int) : min=0 max=1 step=1 default=0 value=0
exposure_auto 0x009a0901 (menu) : min=0 max=3 default=3 value=3 (Aperture Priority Mode)
exposure_absolute 0x009a0902 (int) : min=3 max=2047 step=1 default=156 value=156 flags=inactive
exposure_auto_priority 0x009a0903 (bool) : default=0 value=1
pan_absolute 0x009a0908 (int) : min=-36000 max=36000 step=3600 default=0 value=0
tilt_absolute 0x009a0909 (int) : min=-36000 max=36000 step=3600 default=0 value=0
focus_absolute 0x009a090a (int) : min=0 max=250 step=1 default=0 value=0 flags=inactive
focus_auto 0x009a090c (bool) : default=1 value=1
zoom_absolute 0x009a090d (int) : min=100 max=500 step=1 default=100 value=100
보시다시피 power_line_frequency
설정은 값 1(50Hz)로 설정되어 있으며 이는 올바른 것입니다. 그러나 웹캠을 사용하는 응용 프로그램(예: Skype, Zoom 또는 Discord)을 실행하고 웹캠 출력 비디오를 보면 여전히 깜박입니다(값은 power_line_frequency
여전히 1임에도 불구하고). 그러나 다시 실행하거나 규칙을 수동으로 실행하면 문제가 해결 /usr/bin/v4l2-ctl --d /dev/video0 --set-ctrl power_line_frequency=1
됩니다 sudo udevadm trigger
.udevadm
왜 이런 일이 발생하는지 또는 해결 방법을 아는 사람이 있습니까?
PD: 저는 커널 5.15.0-56과 함께 Ubuntu 22.04를 사용하고 있습니다.
미리 감사드립니다.