-
Notifications
You must be signed in to change notification settings - Fork 6
Description
such an amasing idea and such silly bugs.
I advice temporary solution for people, who cares, until you make it work out of the box.
Have 2 instances Focal Fossa with stock environment
Bug - unable to install and use this tool. Multile issues on stock box, dump traces, cannot run tool due to odd requirenments for terminal protocol. And not fully control list (see bottom screens and compare to v4l2-ctrl output)
Steps to reproduce: follow recommended install procedure
get pip install git+https://github.com/antmicro/pyvidctrl
get git clone and install https://github.com/antmicro/python3-v4l2.git
Expecred behavior: product installed and works on lastest updated environment
Actial behaviour: unintended fatal errors and python script exceptions, possible not full support of V4L2 controls format and ranges, ( See dumps )
Proposed workaround:
1 Apply proposed workaround during install
2. Get use LINUX term supported SSH client, set some of these settings
- run like TERM=linux pyvidctrl
As far I insestigated bug -
- this software requires 2 features: "transparent cursor" support and 256 and more colors ANSI changeble customizable terminal
- python3 bytes -to-string decode/encode issue - possible regression, did not dig deep enough.
- did not investigated colors issue - I do not care.
Proposed workaround (not final solution)
pip install git+https://github.com/antmicro/pyvidctrl
pip install v4l2
sed "s/range(1\, 9)/list(range(1\, 9))/" -i /usr/local/lib/python3.8/dist-packages/v4l2.py
sed "s/range(0\, 4)/list(range(0\, 4))/" -i /usr/local/lib/python3.8/dist-packages/v4l2.py
git clone https://github.com/antmicro/python3-v4l2.git
cd python3-v4l2/
python3 ./setup.py build
--- ./ctrl_widgets.py 2022-05-02 05:21:00.994031552 +0800
+++ /usr/local/lib/python3.8/dist-packages/pyvidctrl/ctrl_widgets.py 2022-05-02 05:26:31.035203163 +0800
@@ -232,7 +232,14 @@
try:
ioctl(device, VIDIOC_QUERYMENU, querymenu)
options[i] = querymenu.name.decode("ascii")
- except OSError:
+ except:
+ try:
+ ioctl(device, VIDIOC_QUERYMENU, querymenu)
+ options[i] = querymenu.name.decode("utf8")
+ except:
+ # querymenu can fail for given index, but there can
+ # still be more valid indexes
+ pass
# querymenu can fail for given index, but there can
# still be more valid indexes
pass
root@rpilan:~#
--- ./__main__.py 2022-05-02 05:28:57.016294678 +0800
+++ /usr/local/lib/python3.8/dist-packages/pyvidctrl/__main__.py 2022-05-02 05:31:46.112421752 +0800
@@ -153,8 +153,11 @@
curses.init_pair(1, curses.COLOR_BLUE, curses.COLOR_BLACK)
curses.init_pair(2, curses.COLOR_RED, curses.COLOR_BLACK)
curses.init_pair(3, curses.COLOR_YELLOW, curses.COLOR_BLACK)
- curses.init_pair(7, curses.COLOR_WHITE, 236)
- curses.init_pair(8, curses.COLOR_YELLOW, 236)
+ try:
+ curses.init_pair(7, curses.COLOR_WHITE, 236)
+ curses.init_pair(8, curses.COLOR_YELLOW, 236)
+ except:
+ pass
def getch(self):
return self.win.getch()
TERM=linux pyvidctrl
dumps and system info reports
root@rpilan:~# python3 -V
Python 3.8.10
root@rpilan:~# pip3 -V
pip 20.0.2 from /usr/lib/python3/dist-packages/pip (python 3.8)
root@rpilan:~# pip install git+https://github.com/antmicro/pyvidctrl
Collecting git+https://github.com/antmicro/pyvidctrl
Cloning https://github.com/antmicro/pyvidctrl to /tmp/pip-req-build-d4el1_od
Running command git clone -q https://github.com/antmicro/pyvidctrl /tmp/pip-req-build-d4el1_od
Requirement already satisfied (use --upgrade to upgrade): pyvidctrl==1.0 from git+https://github.com/antmicro/pyvidctrl in /usr/local/lib/python3.8/dist-packages/pyvidctrl-1.0-py3.8.egg
Requirement already satisfied: v4l2@ git+https://github.com/antmicro/python3-v4l2 from git+https://github.com/antmicro/python3-v4l2 in /usr/local/lib/python3.8/dist-packages (from pyvidctrl==1.0) (0.2)
Building wheels for collected packages: pyvidctrl
Building wheel for pyvidctrl (setup.py) ... done
Created wheel for pyvidctrl: filename=pyvidctrl-1.0-py3-none-any.whl size=17747 sha256=1759ee8186cb4fae9b9f2ce14d13836e5bc7ae79e711831537fcf2caa785337b
Stored in directory: /tmp/pip-ephem-wheel-cache-tuil0r9p/wheels/08/a6/7e/53e46f5203ee2cfb1d4f80769fb998fd71e4c41924abfc3325
Successfully built pyvidctrl
root@rpilan:~# pip install git+https://github.com/antmicro/pyvidctrl --upgrade
Collecting git+https://github.com/antmicro/pyvidctrl
Cloning https://github.com/antmicro/pyvidctrl to /tmp/pip-req-build-34519u3u
Running command git clone -q https://github.com/antmicro/pyvidctrl /tmp/pip-req-build-34519u3u
Requirement already satisfied, skipping upgrade: v4l2@ git+https://github.com/antmicro/python3-v4l2 from git+https://github.com/antmicro/python3-v4l2 in /usr/local/lib/python3.8/dist-packages (from pyvidctrl==1.0) (0.2)
Building wheels for collected packages: pyvidctrl
Building wheel for pyvidctrl (setup.py) ... done
Created wheel for pyvidctrl: filename=pyvidctrl-1.0-py3-none-any.whl size=17747 sha256=3ae3f88cf9276a90757e98ad14e8ed03f9e9e8ff28c9caa4098efd1d7160e1ba
Stored in directory: /tmp/pip-ephem-wheel-cache-wwlm0v8z/wheels/08/a6/7e/53e46f5203ee2cfb1d4f80769fb998fd71e4c41924abfc3325
Successfully built pyvidctrl
Installing collected packages: pyvidctrl
Attempting uninstall: pyvidctrl
Found existing installation: pyvidctrl 1.0
Uninstalling pyvidctrl-1.0:
Successfully uninstalled pyvidctrl-1.0
Successfully installed pyvidctrl-1.0
root@rpilan:~# TERM=linux pyvidctrl
Traceback (most recent call last):
File "/usr/local/bin/pyvidctrl", line 8, in <module>
sys.exit(main())
File "/usr/local/lib/python3.8/dist-packages/pyvidctrl/__main__.py", line 564, in main
app = App(device)
File "/usr/local/lib/python3.8/dist-packages/pyvidctrl/__main__.py", line 134, in __init__
ctrl_widgets.append(CtrlWidget.create(device, ctrl))
File "/usr/local/lib/python3.8/dist-packages/pyvidctrl/ctrl_widgets.py", line 42, in create
return {
File "/usr/local/lib/python3.8/dist-packages/pyvidctrl/ctrl_widgets.py", line 656, in __init__
super().__init__(device, ctrl)
File "/usr/local/lib/python3.8/dist-packages/pyvidctrl/ctrl_widgets.py", line 234, in __init__
options[i] = querymenu.name.decode("ascii")
UnicodeDecodeError: 'ascii' codec can't decode byte 0xf0 in position 1: ordinal not in range(128)
root@rpilan:~#
root@rpilan:/usr/local/lib/python3.8/dist-packages# pip install v4l2 --force-reinstall -I
Processing /root/.cache/pip/wheels/ba/0f/80/8680e821f2b4c3ce81c281e00d0d8e5b1922318b6d57090928/v4l2-0.2-py3-none-any.whl
Installing collected packages: v4l2
Successfully installed v4l2-0.2
root@rpilan:/usr/local/lib/python3.8/dist-packages# cd /usr/local/lib/python3.8/dist-packages/
root@rpilan:~# TERM=linux pyvidctrl
Traceback (most recent call last):
File "/usr/local/bin/pyvidctrl", line 5, in <module>
from pyvidctrl.__main__ import main
File "/usr/local/lib/python3.8/dist-packages/pyvidctrl/__main__.py", line 3, in <module>
from v4l2 import *
File "/usr/local/lib/python3.8/dist-packages/v4l2.py", line 197, in <module>
) = range(1, 9) + [0x80]
TypeError: unsupported operand type(s) for +: 'range' and 'list'
root@rpilan:~# pip3 install v4l2
Requirement already satisfied: v4l2 in /usr/local/lib/python3.8/dist-packages (0.2)
root@rpilan:~# TERM=linux pyvidctrl
Traceback (most recent call last):
File "/usr/local/bin/pyvidctrl", line 8, in <module>
sys.exit(main())
File "/usr/local/lib/python3.8/dist-packages/pyvidctrl/__main__.py", line 564, in main
app = App(device)
File "/usr/local/lib/python3.8/dist-packages/pyvidctrl/__main__.py", line 123, in __init__
self.ctrls = query_ctrls(device)
File "/usr/local/lib/python3.8/dist-packages/pyvidctrl/__main__.py", line 102, in query_ctrls
ctrls_v4l2 = query_v4l2_ctrls(dev)
File "/usr/local/lib/python3.8/dist-packages/pyvidctrl/__main__.py", line 52, in query_v4l2_ctrls
ctrl = v4l2_query_ext_ctrl()
NameError: name 'v4l2_query_ext_ctrl' is not defined
root@rpilan:~/222# git clone https://github.com/antmicro/python3-v4l2.git
Cloning into 'python3-v4l2'...
remote: Enumerating objects: 29, done.
remote: Counting objects: 100% (7/7), done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 29 (delta 2), reused 3 (delta 1), pack-reused 22
Unpacking objects: 100% (29/29), 40.26 KiB | 388.00 KiB/s, done.
root@rpilan:~/222# cd python3-v4l2/
root@rpilan:~/222/python3-v4l2# python3 ./setup.py build
Warning: 'classifiers' should be a list, got type 'tuple'
running build
running build_py
creating build
creating build/lib
copying v4l2.py -> build/lib
root@rpilan:~/222/python3-v4l2# python3 ./setup.py install
Warning: 'classifiers' should be a list, got type 'tuple'
running install
running build
running build_py
running install_lib
copying build/lib/v4l2.py -> /usr/local/lib/python3.8/dist-packages
byte-compiling /usr/local/lib/python3.8/dist-packages/v4l2.py to v4l2.cpython-38.pyc
running install_egg_info
Removing /usr/local/lib/python3.8/dist-packages/v4l2-0.2.egg-info
Writing /usr/local/lib/python3.8/dist-packages/v4l2-0.2.egg-info
root@rpilan:~/222/python3-v4l2#
root@rpilan:~/222/python3-v4l2#
root@rpilan:~/222/python3-v4l2# pyvidctrl
Traceback (most recent call last):
File "/usr/local/bin/pyvidctrl", line 8, in <module>
sys.exit(main())
File "/usr/local/lib/python3.8/dist-packages/pyvidctrl/__main__.py", line 564, in main
app = App(device)
File "/usr/local/lib/python3.8/dist-packages/pyvidctrl/__main__.py", line 134, in __init__
ctrl_widgets.append(CtrlWidget.create(device, ctrl))
File "/usr/local/lib/python3.8/dist-packages/pyvidctrl/ctrl_widgets.py", line 42, in create
return {
File "/usr/local/lib/python3.8/dist-packages/pyvidctrl/ctrl_widgets.py", line 656, in __init__
super().__init__(device, ctrl)
File "/usr/local/lib/python3.8/dist-packages/pyvidctrl/ctrl_widgets.py", line 234, in __init__
options[i] = querymenu.name.decode("ascii")
Traceback (most recent call last):can't decode byte 0xf0 in position 1: ordinal not in range(128)
root@rpilan:~/222/python3-v4l2# py File "/usr/local/bin/pyvidctrl", line 8, in <module>
(failed reverse-i-search)`TER': expor ^CRM=linux sys.exit(main())
File "/usr/local/lib/python3.8/dist-packages/pyvidctrl/__main__.py", line 577, in mainn3.8/dist-packages#
root@rpilan:/usr/local/lib/pytho app.start_tui() cd
File "/usr/local/lib/python3.8/dist-packages/pyvidctrl/__main__.py", line 156, in start_tui
Traceback (most recent call last): curses.init_pair(7, curses.COLOR_WHITE, 236)ctrl", line 8, in <module>
sys.exit(main()) _curses.error: init_pair() returned ERR
--------------
Traceback (most recent call last):
File "/usr/local/bin/pyvidctrl", line 8, in <module> sys.exit(main())
File "/usr/local/lib/python3.8/dist-packages/pyvidctrl/__main__.py", line 577, in main app.start_tui()
File "/usr/local/lib/python3.8/dist-packages/pyvidctrl/__main__.py", line 156, in start_tui curses.init_pair(7, curses.COLOR_WHITE, 236)
_curses.error: init_pair() returned ERR
-------------
Ubuntu 20.04.4 LTS (GNU/Linux 5.4.0-104-generic armv7l)
root@michelangelo:~# uname -a ; cat /etc/*rele* ;cat /proc/cpuinfo |egrep "ode|war"
Linux michelangelo.lan 5.4.0-104-generic #118-Ubuntu SMP Wed Mar 2 19:04:47 UTC 2022 armv7l armv7l armv7l GNU/Linux
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04.4 LTS"
NAME="Ubuntu"
VERSION="20.04.4 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.4 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal
model name : ARMv7 Processor rev 0 (v7l)
model name : ARMv7 Processor rev 0 (v7l)
Hardware : NVIDIA Tegra SoC (Flattened Device Tree)
root@michelangelo:~# v4l2-ctl --verbose --all
VIDIOC_QUERYCAP: ok
Driver Info:
Driver name : uvcvideo
Card type : Video Capture 3
Bus info : usb-c5008000.usb-1.2
Driver version : 5.4.166
Capabilities : 0x84a00001
Video Capture
Metadata Capture
Streaming
Extended Pix Format
Device Capabilities
Device Caps : 0x04200001
Video Capture
Streaming
Extended Pix Format
Media Driver Info:
Driver name : uvcvideo
Model : USB Camera: USB Camera
Serial : 200901010001
Bus info : usb-c5008000.usb-1.2
Media version : 5.4.166
Hardware revision: 0x00000925 (2341)
Driver version : 5.4.166
Interface Info:
ID : 0x03000002
Type : V4L Video
Entity Info:
ID : 0x00000001 (1)
Name : Video Capture 3
Function : V4L2 I/O
Flags : default
Pad 0x01000007 : 0: Sink
Link 0x02000010: from remote pad 0x100000a of entity 'Processing 2': Data, Enabled, Immutable
Priority: 2
Video input : 0 (Camera 1: ok)
Format Video Capture:
Width/Height : 640/480
Pixel Format : 'YUYV' (YUYV 4:2:2)
Field : None
Bytes per Line : 1280
Size Image : 614400
Colorspace : sRGB
Transfer Function : Default (maps to sRGB)
YCbCr/HSV Encoding: Default (maps to ITU-R 601)
Quantization : Default (maps to Limited Range)
Flags :
Crop Capability Video Capture:
Bounds : Left 0, Top 0, Width 640, Height 480
Default : Left 0, Top 0, Width 640, Height 480
Pixel Aspect: 1/1
Selection Video Capture: crop_default, Left 0, Top 0, Width 640, Height 480, Flags:
Selection Video Capture: crop_bounds, Left 0, Top 0, Width 640, Height 480, Flags:
Streaming Parameters Video Capture:
Capabilities : timeperframe
Frames per second: 30.000 (30/1)
Read buffers : 0
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
hue 0x00980903 (int) : min=0 max=255 step=1 default=128 value=128
white_balance_temperature_auto 0x0098090c (bool) : default=1 value=1
gamma 0x00980910 (int) : min=100 max=500 step=1 default=220 value=220
gain 0x00980913 (int) : min=0 max=100 step=1 default=0 value=0
power_line_frequency 0x00980918 (menu) : min=0 max=2 default=1 value=1
0: Disabled
1: 50 Hz
2: 60 Hz
white_balance_temperature 0x0098091a (int) : min=2800 max=6500 step=10 default=4650 value=4650 flags=inactive
sharpness 0x0098091b (int) : min=0 max=4 step=1 default=1 value=1
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
1: Manual Mode
3: Aperture Priority Mode
exposure_absolute 0x009a0902 (int) : min=50 max=10000 step=1 default=166 value=10000 flags=inactive
exposure_auto_priority 0x009a0903 (bool) : default=0 value=0
root@michelangelo:~#
root@michelangelo:~# uvcdynctrl -c
Listing available controls for device video0:
Brightness
Contrast
Saturation
Hue
White Balance Temperature, Auto
Gamma
Gain
Power Line Frequency
White Balance Temperature
Sharpness
Backlight Compensation
Exposure, Auto
Exposure (Absolute)
Exposure, Auto Priority
root@michelangelo:~#
root@michelangelo:~# locale
LANG=ru_RU.UTF-8
LANGUAGE=ru_RU:ru
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE="ru_RU.UTF-8"
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="ru_RU.UTF-8"
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
LC_ALL=
------------
Ubuntu 20.04.4 LTS (GNU/Linux 5.4.0-1059-raspi aarch64)
root@rpilan:~# uname -a ; cat /etc/*rele* ;cat /proc/cpuinfo |egrep "ode|war"
Linux rpilan 5.4.0-1059-raspi #67-Ubuntu SMP PREEMPT Mon Apr 11 14:16:01 UTC 2022 aarch64 aarch64 aarch64 GNU/Linux
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04.4 LTS"
NAME="Ubuntu"
VERSION="20.04.4 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.4 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal
Hardware : BCM2835
Model : Raspberry Pi 4 Model B Rev 1.1
root@rpilan:~# v4l2-ctl --verbose --all
VIDIOC_QUERYCAP: ok
Driver Info:
Driver name : bm2835 mmal
Card type : mmal service 16.1
Bus info : platform:bcm2835-v4l2
Driver version : 5.4.178
Capabilities : 0x85200005
Video Capture
Video Overlay
Read/Write
Streaming
Extended Pix Format
Device Capabilities
Device Caps : 0x05200005
Video Capture
Video Overlay
Read/Write
Streaming
Extended Pix Format
Priority: 2
Video input : 0 (Camera 0: ok)
Format Video Capture:
Width/Height : 640/480
Pixel Format : 'YU12' (Planar YUV 4:2:0)
Field : None
Bytes per Line : 640
Size Image : 460800
Colorspace : SMPTE 170M
Transfer Function : Default (maps to Rec. 709)
YCbCr/HSV Encoding: Default (maps to ITU-R 601)
Quantization : Default (maps to Limited Range)
Flags :
Format Video Overlay:
Left/Top : 150/50
Width/Height: 1024/768
Field : None
Chroma Key : 0x00000000
Global Alpha: 0xff
Clip Count : 0
Clip Bitmap : No
Framebuffer Format:
Capability : Extern Overlay
Global Alpha
Flags : Overlay Matches Capture/Output Size
Width : 640
Height : 480
Pixel Format : 'YU12'
Streaming Parameters Video Capture:
Capabilities : timeperframe
Frames per second: 30.000 (30000/1000)
Read buffers : 1
User Controls
brightness 0x00980900 (int) : min=0 max=100 step=1 default=50 value=50 flags=slider
contrast 0x00980901 (int) : min=-100 max=100 step=1 default=0 value=0 flags=slider
saturation 0x00980902 (int) : min=-100 max=100 step=1 default=0 value=0 flags=slider
red_balance 0x0098090e (int) : min=1 max=7999 step=1 default=1000 value=1000 flags=slider
blue_balance 0x0098090f (int) : min=1 max=7999 step=1 default=1000 value=1000 flags=slider
horizontal_flip 0x00980914 (bool) : default=0 value=0
vertical_flip 0x00980915 (bool) : default=0 value=0
power_line_frequency 0x00980918 (menu) : min=0 max=3 default=1 value=1
0: Disabled
1: 50 Hz
2: 60 Hz
3: Auto
sharpness 0x0098091b (int) : min=-100 max=100 step=1 default=0 value=0 flags=slider
color_effects 0x0098091f (menu) : min=0 max=15 default=0 value=0
0: None
1: Black & White
2: Sepia
3: Negative
4: Emboss
5: Sketch
6: Sky Blue
7: Grass Green
8: Skin Whiten
9: Vivid
10: Aqua
11: Art Freeze
12: Silhouette
13: Solarization
14: Antique
15: Set Cb/Cr
rotate 0x00980922 (int) : min=0 max=360 step=90 default=0 value=0 flags=modify-layout
color_effects_cbcr 0x0098092a (int) : min=0 max=65535 step=1 default=32896 value=32896
Codec Controls
video_bitrate_mode 0x009909ce (menu) : min=0 max=1 default=0 value=1 flags=update
0: Variable Bitrate
1: Constant Bitrate
video_bitrate 0x009909cf (int) : min=25000 max=25000000 step=25000 default=10000000 value=20000000
repeat_sequence_header 0x009909e2 (bool) : default=0 value=0
h264_i_frame_period 0x00990a66 (int) : min=0 max=2147483647 step=1 default=60 value=5
h264_level 0x00990a67 (menu) : min=0 max=11 default=11 value=11
0: 1
1: 1b
2: 1.1
3: 1.2
4: 1.3
5: 2
6: 2.1
7: 2.2
8: 3
9: 3.1
10: 3.2
11: 4
h264_profile 0x00990a6b (menu) : min=0 max=4 default=4 value=0
0: Baseline
1: Constrained Baseline
2: Main
4: High
Camera Controls
auto_exposure 0x009a0901 (menu) : min=0 max=3 default=0 value=0
0: Auto Mode
1: Manual Mode
exposure_time_absolute 0x009a0902 (int) : min=1 max=10000 step=1 default=1000 value=1000
exposure_dynamic_framerate 0x009a0903 (bool) : default=0 value=1
auto_exposure_bias 0x009a0913 (intmenu): min=0 max=24 default=12 value=12
0: -4000 (0xfffffffffffff060)
1: -3667 (0xfffffffffffff1ad)
2: -3333 (0xfffffffffffff2fb)
3: -3000 (0xfffffffffffff448)
4: -2667 (0xfffffffffffff595)
5: -2333 (0xfffffffffffff6e3)
6: -2000 (0xfffffffffffff830)
7: -1667 (0xfffffffffffff97d)
8: -1333 (0xfffffffffffffacb)
9: -1000 (0xfffffffffffffc18)
10: -667 (0xfffffffffffffd65)
11: -333 (0xfffffffffffffeb3)
12: 0 (0x0)
13: 333 (0x14d)
14: 667 (0x29b)
15: 1000 (0x3e8)
16: 1333 (0x535)
17: 1667 (0x683)
18: 2000 (0x7d0)
19: 2333 (0x91d)
20: 2667 (0xa6b)
21: 3000 (0xbb8)
22: 3333 (0xd05)
23: 3667 (0xe53)
24: 4000 (0xfa0)
white_balance_auto_preset 0x009a0914 (menu) : min=0 max=10 default=1 value=1
0: Manual
1: Auto
2: Incandescent
3: Fluorescent
4: Fluorescent H
5: Horizon
6: Daylight
7: Flash
8: Cloudy
9: Shade
10: Greyworld
image_stabilization 0x009a0916 (bool) : default=0 value=0
iso_sensitivity 0x009a0917 (intmenu): min=0 max=4 default=0 value=0
0: 0 (0x0)
1: 100000 (0x186a0)
2: 200000 (0x30d40)
3: 400000 (0x61a80)
4: 800000 (0xc3500)
iso_sensitivity_auto 0x009a0918 (menu) : min=0 max=1 default=1 value=1
0: Manual
1: Auto
exposure_metering_mode 0x009a0919 (menu) : min=0 max=2 default=0 value=0
0: Average
1: Center Weighted
2: Spot
scene_mode 0x009a091a (menu) : min=0 max=13 default=0 value=8
0: None
8: Night
11: Sports
JPEG Compression Controls
compression_quality 0x009d0903 (int) : min=1 max=100 step=1 default=30 value=95
root@rpilan:~#
root@rpilan:~# uvcdynctrl -c
Listing available controls for device video0:
Brightness
Contrast
Saturation
Red Balance
Blue Balance
Horizontal Flip
Vertical Flip
Power Line Frequency
Sharpness
Color Effects
Rotate
Color Effects, CbCr
Video Bitrate Mode
Video Bitrate
Repeat Sequence Header
H264 I-Frame Period
H264 Level
H264 Profile
Auto Exposure
Exposure Time, Absolute
Exposure, Dynamic Framerate
White Balance, Auto & Preset
Image Stabilization
ISO Sensitivity, Auto
Exposure, Metering Mode
Scene Mode
root@rpilan:~#
root@rpilan:~# locale
LANG=C.UTF-8
LANGUAGE=
LC_CTYPE="C.UTF-8"
LC_NUMERIC="C.UTF-8"
LC_TIME="C.UTF-8"
LC_COLLATE="C.UTF-8"
LC_MONETARY="C.UTF-8"
LC_MESSAGES="C.UTF-8"
LC_PAPER="C.UTF-8"
LC_NAME="C.UTF-8"
LC_ADDRESS="C.UTF-8"
LC_TELEPHONE="C.UTF-8"
LC_MEASUREMENT="C.UTF-8"
LC_IDENTIFICATION="C.UTF-8"
LC_ALL=
root@rpilan:~#




