sphinx.addnodesdocument)}( rawsourcechildren]( translations LanguagesNode)}(hhh](h pending_xref)}(hhh]docutils.nodesTextChinese (Simplified)}parenthsba attributes}(ids]classes]names]dupnames]backrefs] refdomainstdreftypedoc reftarget:/translations/zh_CN/userspace-api/media/v4l/vidioc-dqeventmodnameN classnameN refexplicitutagnamehhh ubh)}(hhh]hChinese (Traditional)}hh2sbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget:/translations/zh_TW/userspace-api/media/v4l/vidioc-dqeventmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hItalian}hhFsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget:/translations/it_IT/userspace-api/media/v4l/vidioc-dqeventmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hJapanese}hhZsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget:/translations/ja_JP/userspace-api/media/v4l/vidioc-dqeventmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hKorean}hhnsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget:/translations/ko_KR/userspace-api/media/v4l/vidioc-dqeventmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hPortuguese (Brazilian)}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget:/translations/pt_BR/userspace-api/media/v4l/vidioc-dqeventmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hSpanish}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget:/translations/sp_SP/userspace-api/media/v4l/vidioc-dqeventmodnameN classnameN refexplicituh1hhh ubeh}(h]h ]h"]h$]h&]current_languageEnglishuh1h hh _documenthsourceNlineNubhcomment)}(h8SPDX-License-Identifier: GFDL-1.1-no-invariants-or-laterh]h8SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later}hhsbah}(h]h ]h"]h$]h&] xml:spacepreserveuh1hhhhhhT/var/lib/git/docbuild/linux/Documentation/userspace-api/media/v4l/vidioc-dqevent.rsthKubhtarget)}(h.. _VIDIOC_DQEVENT:h]h}(h]h ]h"]h$]h&]refidvidioc-dqeventuh1hhKhhhhhhubhsection)}(hhh](htitle)}(hioctl VIDIOC_DQEVENTh]hioctl VIDIOC_DQEVENT}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhhhhhKubh)}(hhh](h)}(hNameh]hName}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhhhhhK ubh paragraph)}(hVIDIOC_DQEVENT - Dequeue eventh]hVIDIOC_DQEVENT - Dequeue event}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK hhhhubeh}(h]nameah ]h"]nameah$]h&]uh1hhhhhhhhK ubh)}(hhh](h)}(hSynopsish]hSynopsis}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhhhhhKubhindex)}(hhh]h}(h]h ]h"]h$]h&]entries](singleV4L.VIDIOC_DQEVENT (C macro)c.V4L.VIDIOC_DQEVENThNtauh1j%hjhhhNhNubhdesc)}(hhh](hdesc_signature)}(hVIDIOC_DQEVENTh]hdesc_signature_line)}(hVIDIOC_DQEVENTh]h desc_name)}(hVIDIOC_DQEVENTh]h desc_sig_name)}(hj?h]hVIDIOC_DQEVENT}(hjOhhhNhNubah}(h]h ]nah"]h$]h&]uh1jMhjIubah}(h]h ](sig-namedescnameeh"]h$]h&]hhuh1jGhjChhhhhKubah}(h]h ]h"]h$]h&]hhƌ add_permalinkuh1jAsphinx_line_type declaratorhj=hhhhhKubah}(h]j4ah ](sig sig-objecteh"]h$]h&] is_multiline _toc_parts) _toc_namehuh1j;hhhKhj8hhubh desc_content)}(hhh]h}(h]h ]h"]h$]h&]uh1jyhj8hhhhhKubeh}(h]h ](cmacroeh"]h$]h&]domainjobjtypejdesctypejnoindex noindexentrynocontentsentryuh1j6hhhjhNhNubh)}(h>``int ioctl(int fd, VIDIOC_DQEVENT, struct v4l2_event *argp)``h]hliteral)}(hjh]h:int ioctl(int fd, VIDIOC_DQEVENT, struct v4l2_event *argp)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKhjhhubeh}(h]synopsisah ]h"]synopsisah$]h&]uh1hhhhhhhhKubh)}(hhh](h)}(h Argumentsh]h Arguments}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhhhhhKubhdefinition_list)}(hhh](hdefinition_list_item)}(h5``fd`` File descriptor returned by :c:func:`open()`. h](hterm)}(h``fd``h]j)}(hjh]hfd}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jhhhKhjubh definition)}(hhh]h)}(h-File descriptor returned by :c:func:`open()`.h](hFile descriptor returned by }(hjhhhNhNubh)}(h:c:func:`open()`h]j)}(hjh]hopen()}(hjhhhNhNubah}(h]h ](xrefjc-funceh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdoc&userspace-api/media/v4l/vidioc-dqevent refdomainjreftypefunc refexplicitrefwarn c:parent_keysphinx.domains.c LookupKey)}data]j ASTIdentifier)} identifierV4LsbNasb reftargetopenuh1hhhhKhjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhKhjubj)}(h1``argp`` Pointer to struct :c:type:`v4l2_event`. h](j)}(h``argp``h]j)}(hjBh]hargp}(hjDhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj@ubah}(h]h ]h"]h$]h&]uh1jhhhKhj<ubj)}(hhh]h)}(h'Pointer to struct :c:type:`v4l2_event`.h](hPointer to struct }(hjZhhhNhNubh)}(h:c:type:`v4l2_event`h]j)}(hjdh]h v4l2_event}(hjfhhhNhNubah}(h]h ](jjc-typeeh"]h$]h&]uh1jhjbubah}(h]h ]h"]h$]h&]refdocj refdomainjreftypetype refexplicitrefwarnjjj$ v4l2_eventuh1hhhhKhjZubh.}(hjZhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjWubah}(h]h ]h"]h$]h&]uh1jhj<ubeh}(h]h ]h"]h$]h&]uh1jhhhKhjhhubeh}(h]h ]h"]h$]h&]uh1jhjhhhhhNubeh}(h] argumentsah ]h"] argumentsah$]h&]uh1hhhhhhhhKubh)}(hhh](h)}(h Descriptionh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhhhhhK ubh)}(hXDequeue an event from a video device. No input is required for this ioctl. All the fields of the struct :c:type:`v4l2_event` structure are filled by the driver. The file handle will also receive exceptions which the application may get by e.g. using the select system call.h](hhDequeue an event from a video device. No input is required for this ioctl. All the fields of the struct }(hjhhhNhNubh)}(h:c:type:`v4l2_event`h]j)}(hjh]h v4l2_event}(hjhhhNhNubah}(h]h ](jjc-typeeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftypetype refexplicitrefwarnjjj$ v4l2_eventuh1hhhhK"hjubh structure are filled by the driver. The file handle will also receive exceptions which the application may get by e.g. using the select system call.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK"hjhhubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2V4L.v4l2_event (C type)c.V4L.v4l2_eventhNtauh1j%hjhhhNhNubj7)}(hhh](j<)}(h v4l2_eventh]jB)}(htype v4l2_eventh](hdesc_sig_keyword)}(htypeh]htype}(hjhhhNhNubah}(h]h ]kah"]h$]h&]uh1jhjhhhhhK(ubhdesc_sig_space)}(h h]h }(hjhhhNhNubah}(h]h ]wah"]h$]h&]uh1jhjhhhhhK(ubjH)}(h v4l2_eventh]jN)}(hjh]h v4l2_event}(hj&hhhNhNubah}(h]h ]jYah"]h$]h&]uh1jMhj"ubah}(h]h ](j`jaeh"]h$]h&]hhuh1jGhjhhhhhK(ubeh}(h]h ]h"]h$]h&]hhjkuh1jAjljmhjhhhhhK(ubah}(h]jah ](jqjreh"]h$]h&]jvjw)jxhuh1j;hhhK(hjhhubjz)}(hhh]h}(h]h ]h"]h$]h&]uh1jyhjhhhhhK(ubeh}(h]h ](jtypeeh"]h$]h&]jjjjQjjQjjjuh1j6hhhjhNhNubhtabular_col_spec)}(hhh]h}(h]h ]h"]h$]h&]spec|p{3.0cm}|p{3.4cm}|p{10.9cm}|uh1jUhhhK*hjhhubhtable)}(hhh](h)}(hstruct v4l2_eventh]hstruct v4l2_event}(hjghhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK-hjdubhtgroup)}(hhh](hcolspec)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhjwubj{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhjwubj{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhjwubhtbody)}(hhh](hrow)}(hhh](hentry)}(hhh]h)}(h__u32h]h__u32}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK2hjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h``type``h]j)}(hjh]htype}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhK3hjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h)Type of the event, see :ref:`event-type`.h](hType of the event, see }(hjhhhNhNubh)}(h:ref:`event-type`h]hinline)}(hjh]h event-type}(hjhhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftyperef refexplicitrefwarnj$ event-typeuh1hhhhK4hjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK4hjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(hunion {h]hunion {}(hj&hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK5hj#ubah}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh]h)}(h``u``h]j)}(hj?h]hu}(hjAhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj=ubah}(h]h ]h"]h$]h&]uh1hhhhK6hj:ubah}(h]h ]h"]h$]h&]morecolsKuh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h!struct :c:type:`v4l2_event_vsync`h](hstruct }(hjghhhNhNubh)}(h:c:type:`v4l2_event_vsync`h]j)}(hjqh]hv4l2_event_vsync}(hjshhhNhNubah}(h]h ](jjc-typeeh"]h$]h&]uh1jhjoubah}(h]h ]h"]h$]h&]refdocj refdomainjreftypetype refexplicitrefwarnjjj$v4l2_event_vsyncuh1hhhhK7hjgubeh}(h]h ]h"]h$]h&]uh1hhhhK7hjdubah}(h]h ]h"]h$]h&]uh1jhjaubj)}(hhh]h)}(h ``vsync``h]j)}(hjh]hvsync}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhK8hjubah}(h]h ]h"]h$]h&]uh1jhjaubj)}(hhh]h)}(h*Event data for event ``V4L2_EVENT_VSYNC``.h](hEvent data for event }(hjhhhNhNubj)}(h``V4L2_EVENT_VSYNC``h]hV4L2_EVENT_VSYNC}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK9hjubah}(h]h ]h"]h$]h&]uh1jhjaubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h struct :c:type:`v4l2_event_ctrl`h](hstruct }(hjhhhNhNubh)}(h:c:type:`v4l2_event_ctrl`h]j)}(hjh]hv4l2_event_ctrl}(hjhhhNhNubah}(h]h ](jjc-typeeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftypetype refexplicitrefwarnjjj$v4l2_event_ctrluh1hhhhK:hjubeh}(h]h ]h"]h$]h&]uh1hhhhK:hjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h``ctrl``h]j)}(hj'h]hctrl}(hj)hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj%ubah}(h]h ]h"]h$]h&]uh1hhhhK;hj"ubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h)Event data for event ``V4L2_EVENT_CTRL``.h](hEvent data for event }(hjEhhhNhNubj)}(h``V4L2_EVENT_CTRL``h]hV4L2_EVENT_CTRL}(hjMhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjEubh.}(hjEhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjqubj)}(hhh]h)}(h/Event data for event ``V4L2_EVENT_FRAME_SYNC``.h](hEvent data for event }(hjhhhNhNubj)}(h``V4L2_EVENT_FRAME_SYNC``h]hV4L2_EVENT_FRAME_SYNC}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK?hjubah}(h]h ]h"]h$]h&]uh1jhjqubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h&struct :c:type:`v4l2_event_motion_det`h](hstruct }(hjhhhNhNubh)}(h:c:type:`v4l2_event_motion_det`h]j)}(hj h]hv4l2_event_motion_det}(hj hhhNhNubah}(h]h ](jjc-typeeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftypetype refexplicitrefwarnjjj$v4l2_event_motion_detuh1hhhhK@hjubeh}(h]h ]h"]h$]h&]uh1hhhhK@hjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h``motion_det``h]j)}(hj7h]h motion_det}(hj9hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj5ubah}(h]h ]h"]h$]h&]uh1hhhhKAhj2ubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h+Event data for event V4L2_EVENT_MOTION_DET.h]h+Event data for event V4L2_EVENT_MOTION_DET.}(hjUhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKBhjRubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h&struct :c:type:`v4l2_event_src_change`h](hstruct }(hjuhhhNhNubh)}(h:c:type:`v4l2_event_src_change`h]j)}(hjh]hv4l2_event_src_change}(hjhhhNhNubah}(h]h ](jjc-typeeh"]h$]h&]uh1jhj}ubah}(h]h ]h"]h$]h&]refdocj refdomainjreftypetype refexplicitrefwarnjjj$v4l2_event_src_changeuh1hhhhKChjuubeh}(h]h ]h"]h$]h&]uh1hhhhKChjrubah}(h]h ]h"]h$]h&]uh1jhjoubj)}(hhh]h)}(h``src_change``h]j)}(hjh]h src_change}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKDhjubah}(h]h ]h"]h$]h&]uh1jhjoubj)}(hhh]h)}(h.Event data for event V4L2_EVENT_SOURCE_CHANGE.h]h.Event data for event V4L2_EVENT_SOURCE_CHANGE.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKEhjubah}(h]h ]h"]h$]h&]uh1jhjoubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h__u8h]h__u8}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKFhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h``data``\ [64]h](j)}(h``data``h]hdata}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh [64]}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKGhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(hlEvent data. Defined by the event type. The union should be used to define easily accessible type for events.h]hlEvent data. Defined by the event type. The union should be used to define easily accessible type for events.}(hj'hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKHhj$ubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h}h]h}}(hjGhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKJhjDubah}(h]h ]h"]h$]h&]uh1jhjAubj)}(hhh]h}(h]h ]h"]h$]h&]morecolsKuh1jhjAubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h__u32h]h__u32}(hjqhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKLhjnubah}(h]h ]h"]h$]h&]uh1jhjkubj)}(hhh]h)}(h ``pending``h]j)}(hjh]hpending}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKMhjubah}(h]h ]h"]h$]h&]uh1jhjkubj)}(hhh]h)}(h,Number of pending events excluding this one.h]h,Number of pending events excluding this one.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKNhjubah}(h]h ]h"]h$]h&]uh1jhjkubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h__u32h]h__u32}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKOhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h ``sequence``h]j)}(hjh]hsequence}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKPhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(hEvent sequence number. The sequence number is incremented for every subscribed event that takes place. If sequence numbers are not contiguous it means that events have been lost.h]hEvent sequence number. The sequence number is incremented for every subscribed event that takes place. If sequence numbers are not contiguous it means that events have been lost.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKQhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(hstruct timespech]hstruct timespec}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKThjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h ``timestamp``h]j)}(hj8h]h timestamp}(hj:hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj6ubah}(h]h ]h"]h$]h&]uh1hhhhKUhj3ubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(hEvent timestamp. The timestamp has been taken from the ``CLOCK_MONOTONIC`` clock. To access the same clock outside V4L2, use :c:func:`clock_gettime`.h](h7Event timestamp. The timestamp has been taken from the }(hjVhhhNhNubj)}(h``CLOCK_MONOTONIC``h]hCLOCK_MONOTONIC}(hj^hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjVubh3 clock. To access the same clock outside V4L2, use }(hjVhhhNhNubh)}(h:c:func:`clock_gettime`h]j)}(hjrh]hclock_gettime()}(hjthhhNhNubah}(h]h ](jjc-funceh"]h$]h&]uh1jhjpubah}(h]h ]h"]h$]h&]refdocj refdomainjreftypefunc refexplicitrefwarnjjj$ clock_gettimeuh1hhhhKVhjVubh.}(hjVhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKVhjSubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(hu32h]hu32}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKYhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h``id``h]j)}(hjh]hid}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKZhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(hThe ID associated with the event source. If the event does not have an associated ID (this depends on the event type), then this is 0.h]hThe ID associated with the event source. If the event does not have an associated ID (this depends on the event type), then this is 0.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK[hjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h__u32h]h__u32}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK^hjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h``reserved``\ [8]h](j)}(h ``reserved``h]hreserved}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubh [8]}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK_hj ubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(hCReserved for future extensions. Drivers must set the array to zero.h]hCReserved for future extensions. Drivers must set the array to zero.}(hj> hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK`hj; ubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjwubeh}(h]h ]h"]h$]h&]colsKuh1juhjdubeh}(h]id1ah ]h"]h$]h&]uh1jbhjhhhNhNubjV)}(hhh]h}(h]h ]h"]h$]h&]j`|p{6.2cm}|p{2.6cm}|p{8.5cm}|uh1jUhhhKdhjhhubh)}(h.. _event-type:h]h}(h]h ]h"]h$]h&]hԌ event-typeuh1hhKhhjhhhhubjc)}(hhh](h)}(h Event Typesh]h Event Types}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKjhj ubjv)}(hhh](j{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhj ubj{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhj ubj{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhj ubj)}(hhh](j)}(hhh](j)}(hhh]h)}(h``V4L2_EVENT_ALL``h]j)}(hj h]hV4L2_EVENT_ALL}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1hhhhKohj ubah}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh]h)}(h0h]h0}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKphj ubah}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh]h)}(hkAll events. V4L2_EVENT_ALL is valid only for VIDIOC_UNSUBSCRIBE_EVENT for unsubscribing all events at once.h]hkAll events. V4L2_EVENT_ALL is valid only for VIDIOC_UNSUBSCRIBE_EVENT for unsubscribing all events at once.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKqhj ubah}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh](j)}(hhh]h)}(h``V4L2_EVENT_VSYNC``h]j)}(hj h]hV4L2_EVENT_VSYNC}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1hhhhKshj ubah}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh]h)}(h1h]h1}(hj3 hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKthj0 ubah}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh]h)}(htThis event is triggered on the vertical sync. This event has a struct :c:type:`v4l2_event_vsync` associated with it.h](hFThis event is triggered on the vertical sync. This event has a struct }(hjJ hhhNhNubh)}(h:c:type:`v4l2_event_vsync`h]j)}(hjT h]hv4l2_event_vsync}(hjV hhhNhNubah}(h]h ](jjc-typeeh"]h$]h&]uh1jhjR ubah}(h]h ]h"]h$]h&]refdocj refdomainjreftypetype refexplicitrefwarnjjj$v4l2_event_vsyncuh1hhhhKuhjJ ubh associated with it.}(hjJ hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKuhjG ubah}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh](j)}(hhh]h)}(h``V4L2_EVENT_EOS``h]j)}(hj h]hV4L2_EVENT_EOS}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1hhhhKxhj ubah}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh]h)}(h2h]h2}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKyhj ubah}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh]h)}(hThis event is triggered when the end of a stream is reached. This is typically used with MPEG decoders to report to the application when the last of the MPEG stream has been decoded.h]hThis event is triggered when the end of a stream is reached. This is typically used with MPEG decoders to report to the application when the last of the MPEG stream has been decoded.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKzhj ubah}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh](j)}(hhh]h)}(h``V4L2_EVENT_CTRL``h]j)}(hj h]hV4L2_EVENT_CTRL}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1hhhhK}hj ubah}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh]h)}(h3h]h3}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK~hj ubah}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh](h)}(hXThis event requires that the ``id`` matches the control ID from which you want to receive events. This event is triggered if the control's value changes, if a button control is pressed or if the control's flags change. This event has a struct :c:type:`v4l2_event_ctrl` associated with it. This struct contains much of the same information as struct :ref:`v4l2_queryctrl ` and struct :c:type:`v4l2_control`.h](hThis event requires that the }(hj hhhNhNubj)}(h``id``h]hid}(hj# hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubh matches the control ID from which you want to receive events. This event is triggered if the control’s value changes, if a button control is pressed or if the control’s flags change. This event has a struct }(hj hhhNhNubh)}(h:c:type:`v4l2_event_ctrl`h]j)}(hj7 h]hv4l2_event_ctrl}(hj9 hhhNhNubah}(h]h ](jjc-typeeh"]h$]h&]uh1jhj5 ubah}(h]h ]h"]h$]h&]refdocj refdomainjreftypetype refexplicitrefwarnjjj$v4l2_event_ctrluh1hhhhKhj ubhQ associated with it. This struct contains much of the same information as struct }(hj hhhNhNubh)}(h&:ref:`v4l2_queryctrl `h]j)}(hjZ h]hv4l2_queryctrl}(hj\ hhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhjX ubah}(h]h ]h"]h$]h&]refdocj refdomainjf reftyperef refexplicitrefwarnj$v4l2-queryctrluh1hhhhKhj ubh and struct }(hj hhhNhNubh)}(h:c:type:`v4l2_control`h]j)}(hj~ h]h v4l2_control}(hj hhhNhNubah}(h]h ](jjc-typeeh"]h$]h&]uh1jhj| ubah}(h]h ]h"]h$]h&]refdocj refdomainjreftypetype refexplicitrefwarnjjj$ v4l2_controluh1hhhhKhj ubh.}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj ubh)}(hXVIf the event is generated due to a call to :ref:`VIDIOC_S_CTRL ` or :ref:`VIDIOC_S_EXT_CTRLS `, then the event will *not* be sent to the file handle that called the ioctl function. This prevents nasty feedback loops. If you *do* want to get the event, then set the ``V4L2_EVENT_SUB_FL_ALLOW_FEEDBACK`` flag.h](h+If the event is generated due to a call to }(hj hhhNhNubh)}(h$:ref:`VIDIOC_S_CTRL `h]j)}(hj h]h VIDIOC_S_CTRL}(hj hhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]refdocj refdomainj reftyperef refexplicitrefwarnj$ vidioc_g_ctrluh1hhhhKhj ubh or }(hj hhhNhNubh)}(h.:ref:`VIDIOC_S_EXT_CTRLS `h]j)}(hj h]hVIDIOC_S_EXT_CTRLS}(hj hhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]refdocj refdomainj reftyperef refexplicitrefwarnj$vidioc_g_ext_ctrlsuh1hhhhKhj ubh, then the event will }(hj hhhNhNubhemphasis)}(h*not*h]hnot}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j hj ubhg be sent to the file handle that called the ioctl function. This prevents nasty feedback loops. If you }(hj hhhNhNubj )}(h*do*h]hdo}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j hj ubh% want to get the event, then set the }(hj hhhNhNubj)}(h$``V4L2_EVENT_SUB_FL_ALLOW_FEEDBACK``h]h V4L2_EVENT_SUB_FL_ALLOW_FEEDBACK}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubh flag.}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj ubh)}(hX5This event type will ensure that no information is lost when more events are raised than there is room internally. In that case the struct :c:type:`v4l2_event_ctrl` of the second-oldest event is kept, but the ``changes`` field of the second-oldest event is ORed with the ``changes`` field of the oldest event.h](hThis event type will ensure that no information is lost when more events are raised than there is room internally. In that case the struct }(hj3 hhhNhNubh)}(h:c:type:`v4l2_event_ctrl`h]j)}(hj= h]hv4l2_event_ctrl}(hj? hhhNhNubah}(h]h ](jjc-typeeh"]h$]h&]uh1jhj; ubah}(h]h ]h"]h$]h&]refdocj refdomainjreftypetype refexplicitrefwarnjjj$v4l2_event_ctrluh1hhhhKhj3 ubh- of the second-oldest event is kept, but the }(hj3 hhhNhNubj)}(h ``changes``h]hchanges}(hj^ hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj3 ubh3 field of the second-oldest event is ORed with the }(hj3 hhhNhNubj)}(h ``changes``h]hchanges}(hjp hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj3 ubh field of the oldest event.}(hj3 hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj ubeh}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh](j)}(hhh]h)}(h``V4L2_EVENT_FRAME_SYNC``h]j)}(hj h]hV4L2_EVENT_FRAME_SYNC}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1hhhhKhj ubah}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh]h)}(h4h]h4}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj ubah}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh](h)}(hTriggered immediately when the reception of a frame has begun. This event has a struct :c:type:`v4l2_event_frame_sync` associated with it.h](hWTriggered immediately when the reception of a frame has begun. This event has a struct }(hj hhhNhNubh)}(h:c:type:`v4l2_event_frame_sync`h]j)}(hj h]hv4l2_event_frame_sync}(hj hhhNhNubah}(h]h ](jjc-typeeh"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]refdocj refdomainjreftypetype refexplicitrefwarnjjj$v4l2_event_frame_syncuh1hhhhKhj ubh associated with it.}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj ubh)}(hXBIf the hardware needs to be stopped in the case of a buffer underrun it might not be able to generate this event. In such cases the ``frame_sequence`` field in struct :c:type:`v4l2_event_frame_sync` will not be incremented. This causes two consecutive frame sequence numbers to have n times frame interval in between them.h](hIf the hardware needs to be stopped in the case of a buffer underrun it might not be able to generate this event. In such cases the }(hj hhhNhNubj)}(h``frame_sequence``h]hframe_sequence}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubh field in struct }(hj hhhNhNubh)}(h:c:type:`v4l2_event_frame_sync`h]j)}(hj h]hv4l2_event_frame_sync}(hj hhhNhNubah}(h]h ](jjc-typeeh"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]refdocj refdomainjreftypetype refexplicitrefwarnjjj$v4l2_event_frame_syncuh1hhhhKhj ubh| will not be incremented. This causes two consecutive frame sequence numbers to have n times frame interval in between them.}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj ubeh}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh](j)}(hhh]h)}(h``V4L2_EVENT_SOURCE_CHANGE``h]j)}(hjY h]hV4L2_EVENT_SOURCE_CHANGE}(hj[ hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjW ubah}(h]h ]h"]h$]h&]uh1hhhhKhjT ubah}(h]h ]h"]h$]h&]uh1jhjQ ubj)}(hhh]h)}(h5h]h5}(hjw hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjt ubah}(h]h ]h"]h$]h&]uh1jhjQ ubj)}(hhh](h)}(hXThis event is triggered when a source parameter change is detected during runtime by the video device. It can be a runtime resolution change triggered by a video decoder or the format change happening on an input connector. This event requires that the ``id`` matches the input index (when used with a video device node) or the pad index (when used with a subdevice node) from which you want to receive events.h](hThis event is triggered when a source parameter change is detected during runtime by the video device. It can be a runtime resolution change triggered by a video decoder or the format change happening on an input connector. This event requires that the }(hj hhhNhNubj)}(h``id``h]hid}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubh matches the input index (when used with a video device node) or the pad index (when used with a subdevice node) from which you want to receive events.}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj ubh)}(hXThis event has a struct :c:type:`v4l2_event_src_change` associated with it. The ``changes`` bitfield denotes what has changed for the subscribed pad. If multiple events occurred before application could dequeue them, then the changes will have the ORed value of all the events generated.h](hThis event has a struct }(hj hhhNhNubh)}(h:c:type:`v4l2_event_src_change`h]j)}(hj h]hv4l2_event_src_change}(hj hhhNhNubah}(h]h ](jjc-typeeh"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]refdocj refdomainjreftypetype refexplicitrefwarnjjj$v4l2_event_src_changeuh1hhhhKhj ubh associated with it. The }(hj hhhNhNubj)}(h ``changes``h]hchanges}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubh bitfield denotes what has changed for the subscribed pad. If multiple events occurred before application could dequeue them, then the changes will have the ORed value of all the events generated.}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj ubeh}(h]h ]h"]h$]h&]uh1jhjQ ubeh}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh](j)}(hhh]h)}(h``V4L2_EVENT_MOTION_DET``h]j)}(hjh]hV4L2_EVENT_MOTION_DET}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh]h)}(h6h]h6}(hj#hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj ubah}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh]h)}(hTriggered whenever the motion detection state for one or more of the regions changes. This event has a struct :c:type:`v4l2_event_motion_det` associated with it.h](hnTriggered whenever the motion detection state for one or more of the regions changes. This event has a struct }(hj:hhhNhNubh)}(h:c:type:`v4l2_event_motion_det`h]j)}(hjDh]hv4l2_event_motion_det}(hjFhhhNhNubah}(h]h ](jjc-typeeh"]h$]h&]uh1jhjBubah}(h]h ]h"]h$]h&]refdocj refdomainjreftypetype refexplicitrefwarnjjj$v4l2_event_motion_detuh1hhhhKhj:ubh associated with it.}(hj:hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj7ubah}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh](j)}(hhh]h)}(h``V4L2_EVENT_PRIVATE_START``h]j)}(hjh]hV4L2_EVENT_PRIVATE_START}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj}ubah}(h]h ]h"]h$]h&]uh1hhhhKhjzubah}(h]h ]h"]h$]h&]uh1jhjwubj)}(hhh]h)}(h 0x08000000h]h 0x08000000}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjwubj)}(hhh]h)}(h,Base event number for driver-private events.h]h,Base event number for driver-private events.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjwubeh}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]colsKuh1juhj ubeh}(h](id2j eh ] longtableah"] event-typeah$]h&]uh1jbhjhhhNhNexpect_referenced_by_name}jjv sexpect_referenced_by_id}j jv subjV)}(hhh]h}(h]h ]h"]h$]h&]j`|p{4.4cm}|p{4.4cm}|p{8.5cm}|uh1jUhhhKhjhhubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2V4L.v4l2_event_vsync (C type)c.V4L.v4l2_event_vsynchNtauh1j%hjhhhNhNubj7)}(hhh](j<)}(hv4l2_event_vsynch]jB)}(htype v4l2_event_vsynch](j)}(hjh]htype}(hj hhhNhNubah}(h]h ]j ah"]h$]h&]uh1jhjhhhhhKubj)}(h h]h }(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjhhhhhKubjH)}(hv4l2_event_vsynch]jN)}(hjh]hv4l2_event_vsync}(hj*hhhNhNubah}(h]h ]jYah"]h$]h&]uh1jMhj&ubah}(h]h ](j`jaeh"]h$]h&]hhuh1jGhjhhhhhKubeh}(h]h ]h"]h$]h&]hhjkuh1jAjljmhjhhhhhKubah}(h]jah ](jqjreh"]h$]h&]jvjw)jxhuh1j;hhhKhjhhubjz)}(hhh]h}(h]h ]h"]h$]h&]uh1jyhjhhhhhKubeh}(h]h ](jtypeeh"]h$]h&]jjjjUjjUjjjuh1j6hhhjhNhNubjc)}(hhh](h)}(hstruct v4l2_event_vsynch]hstruct v4l2_event_vsync}(hj\hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjYubjv)}(hhh](j{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhjjubj{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhjjubj{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhjjubj)}(hhh]j)}(hhh](j)}(hhh]h)}(h__u8h]h__u8}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h ``field``h]j)}(hjh]hfield}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h2The upcoming field. See enum :c:type:`v4l2_field`.h](hThe upcoming field. See enum }(hjhhhNhNubh)}(h:c:type:`v4l2_field`h]j)}(hjh]h v4l2_field}(hjhhhNhNubah}(h]h ](jjc-typeeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftypetype refexplicitrefwarnjjj$ v4l2_fielduh1hhhhKhjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jhjjubeh}(h]h ]h"]h$]h&]colsKuh1juhjYubeh}(h]id3ah ]h"]h$]h&]uh1jbhjhhhNhNubjV)}(hhh]h}(h]h ]h"]h$]h&]j`|p{3.5cm}|p{3.0cm}|p{10.8cm}|uh1jUhhhKhjhhubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2V4L.v4l2_event_ctrl (C type)c.V4L.v4l2_event_ctrlhNtauh1j%hjhhhNhNubj7)}(hhh](j<)}(hv4l2_event_ctrlh]jB)}(htype v4l2_event_ctrlh](j)}(hjh]htype}(hj?hhhNhNubah}(h]h ]j ah"]h$]h&]uh1jhj;hhhhhKubj)}(h h]h }(hjLhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhj;hhhhhKubjH)}(hv4l2_event_ctrlh]jN)}(hj9h]hv4l2_event_ctrl}(hj^hhhNhNubah}(h]h ]jYah"]h$]h&]uh1jMhjZubah}(h]h ](j`jaeh"]h$]h&]hhuh1jGhj;hhhhhKubeh}(h]h ]h"]h$]h&]hhjkuh1jAjljmhj7hhhhhKubah}(h]j2ah ](jqjreh"]h$]h&]jvjw)jxhuh1j;hhhKhj4hhubjz)}(hhh]h}(h]h ]h"]h$]h&]uh1jyhj4hhhhhKubeh}(h]h ](jtypeeh"]h$]h&]jjjjjjjjjuh1j6hhhjhNhNubjc)}(hhh](h)}(hstruct v4l2_event_ctrlh]hstruct v4l2_event_ctrl}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubjv)}(hhh](j{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhjubj{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhjubj{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhjubj)}(hhh](j)}(hhh](j)}(hhh]h)}(h__u32h]h__u32}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h ``changes``h]j)}(hjh]hchanges}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(hEA bitmask that tells what has changed. See :ref:`ctrl-changes-flags`.h](h+A bitmask that tells what has changed. See }(hjhhhNhNubh)}(h:ref:`ctrl-changes-flags`h]j)}(hj h]hctrl-changes-flags}(hj hhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftyperef refexplicitrefwarnj$ctrl-changes-flagsuh1hhhhKhjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h__u32h]h__u32}(hjChhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj@ubah}(h]h ]h"]h$]h&]uh1jhj=ubj)}(hhh]h)}(h``type``h]j)}(hj\h]htype}(hj^hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjZubah}(h]h ]h"]h$]h&]uh1hhhhKhjWubah}(h]h ]h"]h$]h&]uh1jhj=ubj)}(hhh]h)}(h;The type of the control. See enum :c:type:`v4l2_ctrl_type`.h](h"The type of the control. See enum }(hjzhhhNhNubh)}(h:c:type:`v4l2_ctrl_type`h]j)}(hjh]hv4l2_ctrl_type}(hjhhhNhNubah}(h]h ](jjc-typeeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftypetype refexplicitrefwarnjjj$v4l2_ctrl_typeuh1hhhhKhjzubh.}(hjzhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjwubah}(h]h ]h"]h$]h&]uh1jhj=ubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(hunion {h]hunion {}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h (anonymous)h]h (anonymous)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]morecolsKuh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h__s32h]h__s32}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h ``value``h]j)}(hjh]hvalue}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1hhhhKhj ubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(hThe 32-bit value of the control for 32-bit control types. This is 0 for string controls since the value of a string cannot be passed using :ref:`VIDIOC_DQEVENT`.h](hThe 32-bit value of the control for 32-bit control types. This is 0 for string controls since the value of a string cannot be passed using }(hj,hhhNhNubh)}(h:ref:`VIDIOC_DQEVENT`h]j)}(hj6h]hVIDIOC_DQEVENT}(hj8hhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhj4ubah}(h]h ]h"]h$]h&]refdocj refdomainjBreftyperef refexplicitrefwarnj$vidioc_dqeventuh1hhhhKhj,ubh.}(hj,hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj)ubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h__s64h]h__s64}(hjphhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjmubah}(h]h ]h"]h$]h&]uh1jhjjubj)}(hhh]h)}(h ``value64``h]j)}(hjh]hvalue64}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjjubj)}(hhh]h)}(h9The 64-bit value of the control for 64-bit control types.h]h9The 64-bit value of the control for 64-bit control types.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(hjIh]h}}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h}(h]h ]h"]h$]h&]morecolsKuh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h__u32h]h__u32}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h ``flags``h]j)}(hj h]hflags}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h,The control flags. See :ref:`control-flags`.h](hThe control flags. See }(hj'hhhNhNubh)}(h:ref:`control-flags`h]j)}(hj1h]h control-flags}(hj3hhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhj/ubah}(h]h ]h"]h$]h&]refdocj refdomainj=reftyperef refexplicitrefwarnj$ control-flagsuh1hhhhKhj'ubh.}(hj'hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj$ubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h__s32h]h__s32}(hjkhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjhubah}(h]h ]h"]h$]h&]uh1jhjeubj)}(hhh]h)}(h ``minimum``h]j)}(hjh]hminimum}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjeubj)}(hhh]h)}(hTThe minimum value of the control. See struct :ref:`v4l2_queryctrl `.h](h-The minimum value of the control. See struct }(hjhhhNhNubh)}(h&:ref:`v4l2_queryctrl `h]j)}(hjh]hv4l2_queryctrl}(hjhhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftyperef refexplicitrefwarnj$v4l2-queryctrluh1hhhhKhjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjeubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h__s32h]h__s32}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h ``maximum``h]j)}(hjh]hmaximum}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(hTThe maximum value of the control. See struct :ref:`v4l2_queryctrl `.h](h-The maximum value of the control. See struct }(hjhhhNhNubh)}(h&:ref:`v4l2_queryctrl `h]j)}(hj'h]hv4l2_queryctrl}(hj)hhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhj%ubah}(h]h ]h"]h$]h&]refdocj refdomainj3reftyperef refexplicitrefwarnj$v4l2-queryctrluh1hhhhKhjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h__s32h]h__s32}(hjahhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj^ubah}(h]h ]h"]h$]h&]uh1jhj[ubj)}(hhh]h)}(h``step``h]j)}(hjzh]hstep}(hj|hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjxubah}(h]h ]h"]h$]h&]uh1hhhhKhjuubah}(h]h ]h"]h$]h&]uh1jhj[ubj)}(hhh]h)}(hQThe step value of the control. See struct :ref:`v4l2_queryctrl `.h](h*The step value of the control. See struct }(hjhhhNhNubh)}(h&:ref:`v4l2_queryctrl `h]j)}(hjh]hv4l2_queryctrl}(hjhhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftyperef refexplicitrefwarnj$v4l2-queryctrluh1hhhhKhjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhj[ubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h__s32h]h__s32}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h``default_value``h]j)}(hjh]h default_value}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(hTThe default value of the control. See struct :ref:`v4l2_queryctrl `.h](h-The default value of the control. See struct }(hjhhhNhNubh)}(h&:ref:`v4l2_queryctrl `h]j)}(hjh]hv4l2_queryctrl}(hjhhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocj refdomainj)reftyperef refexplicitrefwarnj$v4l2-queryctrluh1hhhhKhjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]colsKuh1juhjubeh}(h]id4ah ]h"]h$]h&]uh1jbhjhhhNhNubjV)}(hhh]h}(h]h ]h"]h$]h&]j`|p{4.4cm}|p{4.4cm}|p{8.5cm}|uh1jUhhhKhjhhubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2"V4L.v4l2_event_frame_sync (C type)c.V4L.v4l2_event_frame_synchNtauh1j%hjhhhNhNubj7)}(hhh](j<)}(hv4l2_event_frame_synch]jB)}(htype v4l2_event_frame_synch](j)}(hjh]htype}(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1jhjhhhhhMubj)}(h h]h }(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjhhhhhMubjH)}(hv4l2_event_frame_synch]jN)}(hjh]hv4l2_event_frame_sync}(hjhhhNhNubah}(h]h ]jYah"]h$]h&]uh1jMhjubah}(h]h ](j`jaeh"]h$]h&]hhuh1jGhjhhhhhMubeh}(h]h ]h"]h$]h&]hhjkuh1jAjljmhjhhhhhMubah}(h]j{ah ](jqjreh"]h$]h&]jvjw)jxhuh1j;hhhMhj}hhubjz)}(hhh]h}(h]h ]h"]h$]h&]uh1jyhj}hhhhhMubeh}(h]h ](jtypeeh"]h$]h&]jjjjjjjjjuh1j6hhhjhNhNubjc)}(hhh](h)}(hstruct v4l2_event_frame_synch]hstruct v4l2_event_frame_sync}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhMhjubjv)}(hhh](j{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhjubj{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhjubj{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhjubj)}(hhh]j)}(hhh](j)}(hhh]h)}(h__u32h]h__u32}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhMhjubah}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh]h)}(h``frame_sequence``h]j)}(hj*h]hframe_sequence}(hj,hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj(ubah}(h]h ]h"]h$]h&]uh1hhhhMhj%ubah}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh]h)}(h0The sequence number of the frame being received.h]h0The sequence number of the frame being received.}(hjHhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhM hjEubah}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]colsKuh1juhjubeh}(h]id5ah ]h"]h$]h&]uh1jbhjhhhNhNubjV)}(hhh]h}(h]h ]h"]h$]h&]j`|p{4.4cm}|p{4.4cm}|p{8.5cm}|uh1jUhhhM hjhhubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2"V4L.v4l2_event_src_change (C type)c.V4L.v4l2_event_src_changehNtauh1j%hjhhhNhNubj7)}(hhh](j<)}(hv4l2_event_src_changeh]jB)}(htype v4l2_event_src_changeh](j)}(hjh]htype}(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1jhjhhhhhMubj)}(h h]h }(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjhhhhhMubjH)}(hv4l2_event_src_changeh]jN)}(hjh]hv4l2_event_src_change}(hjhhhNhNubah}(h]h ]jYah"]h$]h&]uh1jMhjubah}(h]h ](j`jaeh"]h$]h&]hhuh1jGhjhhhhhMubeh}(h]h ]h"]h$]h&]hhjkuh1jAjljmhjhhhhhMubah}(h]jah ](jqjreh"]h$]h&]jvjw)jxhuh1j;hhhMhjhhubjz)}(hhh]h}(h]h ]h"]h$]h&]uh1jyhjhhhhhMubeh}(h]h ](jtypeeh"]h$]h&]jjjjjjjjjuh1j6hhhjhNhNubjc)}(hhh](h)}(hstruct v4l2_event_src_changeh]hstruct v4l2_event_src_change}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhMhjubjv)}(hhh](j{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhjubj{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhjubj{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhjubj)}(hhh]j)}(hhh](j)}(hhh]h)}(h__u32h]h__u32}(hj"hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhMhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h ``changes``h]j)}(hj;h]hchanges}(hj=hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj9ubah}(h]h ]h"]h$]h&]uh1hhhhMhj6ubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(hDA bitmask that tells what has changed. See :ref:`src-changes-flags`.h](h+A bitmask that tells what has changed. See }(hjYhhhNhNubh)}(h:ref:`src-changes-flags`h]j)}(hjch]hsrc-changes-flags}(hjehhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhjaubah}(h]h ]h"]h$]h&]refdocj refdomainjoreftyperef refexplicitrefwarnj$src-changes-flagsuh1hhhhMhjYubh.}(hjYhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhMhjVubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]colsKuh1juhjubeh}(h]id6ah ]h"]h$]h&]uh1jbhjhhhNhNubjV)}(hhh]h}(h]h ]h"]h$]h&]j`|p{4.4cm}|p{4.4cm}|p{8.5cm}|uh1jUhhhMhjhhubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2"V4L.v4l2_event_motion_det (C type)c.V4L.v4l2_event_motion_dethNtauh1j%hjhhhNhNubj7)}(hhh](j<)}(hv4l2_event_motion_deth]jB)}(htype v4l2_event_motion_deth](j)}(hjh]htype}(hjhhhNhNubah}(h]h ]j ah"]h$]h&]uh1jhjhhhhhMubj)}(h h]h }(hjhhhNhNubah}(h]h ]jah"]h$]h&]uh1jhjhhhhhMubjH)}(hv4l2_event_motion_deth]jN)}(hjh]hv4l2_event_motion_det}(hjhhhNhNubah}(h]h ]jYah"]h$]h&]uh1jMhjubah}(h]h ](j`jaeh"]h$]h&]hhuh1jGhjhhhhhMubeh}(h]h ]h"]h$]h&]hhjkuh1jAjljmhjhhhhhMubah}(h]jah ](jqjreh"]h$]h&]jvjw)jxhuh1j;hhhMhjhhubjz)}(hhh]h}(h]h ]h"]h$]h&]uh1jyhjhhhhhMubeh}(h]h ](jtypeeh"]h$]h&]jjjjjjjjjuh1j6hhhjhNhNubjc)}(hhh](h)}(hstruct v4l2_event_motion_deth]hstruct v4l2_event_motion_det}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhMhjubjv)}(hhh](j{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhj-ubj{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhj-ubj{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhj-ubj)}(hhh](j)}(hhh](j)}(hhh]h)}(h__u32h]h__u32}(hjWhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhM$hjTubah}(h]h ]h"]h$]h&]uh1jhjQubj)}(hhh]h)}(h ``flags``h]j)}(hjph]hflags}(hjrhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjnubah}(h]h ]h"]h$]h&]uh1hhhhM%hjkubah}(h]h ]h"]h$]h&]uh1jhjQubj)}(hhh]h)}(hCurrently only one flag is available: if ``V4L2_EVENT_MD_FL_HAVE_FRAME_SEQ`` is set, then the ``frame_sequence`` field is valid, otherwise that field should be ignored.h](h)Currently only one flag is available: if }(hjhhhNhNubj)}(h#``V4L2_EVENT_MD_FL_HAVE_FRAME_SEQ``h]hV4L2_EVENT_MD_FL_HAVE_FRAME_SEQ}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh is set, then the }(hjhhhNhNubj)}(h``frame_sequence``h]hframe_sequence}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh8 field is valid, otherwise that field should be ignored.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhM&hjubah}(h]h ]h"]h$]h&]uh1jhjQubeh}(h]h ]h"]h$]h&]uh1jhjNubj)}(hhh](j)}(hhh]h)}(h__u32h]h__u32}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhM*hjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h``frame_sequence``h]j)}(hjh]hframe_sequence}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhM+hjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(htThe sequence number of the frame being received. Only valid if the ``V4L2_EVENT_MD_FL_HAVE_FRAME_SEQ`` flag was set.h](hCThe sequence number of the frame being received. Only valid if the }(hj hhhNhNubj)}(h#``V4L2_EVENT_MD_FL_HAVE_FRAME_SEQ``h]hV4L2_EVENT_MD_FL_HAVE_FRAME_SEQ}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubh flag was set.}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhM,hjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjNubj)}(hhh](j)}(hhh]h)}(h__u32h]h__u32}(hj;hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhM.hj8ubah}(h]h ]h"]h$]h&]uh1jhj5ubj)}(hhh]h)}(h``region_mask``h]j)}(hjTh]h region_mask}(hjVhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjRubah}(h]h ]h"]h$]h&]uh1hhhhM/hjOubah}(h]h ]h"]h$]h&]uh1jhj5ubj)}(hhh]h)}(hXmThe bitmask of the regions that reported motion. There is at least one region. If this field is 0, then no motion was detected at all. If there is no ``V4L2_CID_DETECT_MD_REGION_GRID`` control (see :ref:`detect-controls`) to assign a different region to each cell in the motion detection grid, then that all cells are automatically assigned to the default region 0.h](hThe bitmask of the regions that reported motion. There is at least one region. If this field is 0, then no motion was detected at all. If there is no }(hjrhhhNhNubj)}(h"``V4L2_CID_DETECT_MD_REGION_GRID``h]hV4L2_CID_DETECT_MD_REGION_GRID}(hjzhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjrub_@h control (see }(hjrhhhNhNubh)}(h:ref:`detect-controls`h]j)}(hjh]hdetect-controls}(hjhhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftyperef refexplicitrefwarnj$detect-controlsuh1hhhhM0hjrubh) to assign a different region to each cell in the motion detection grid, then that all cells are automatically assigned to the default region 0.}(hjrhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhM0hjoubah}(h]h ]h"]h$]h&]uh1jhj5ubeh}(h]h ]h"]h$]h&]uh1jhjNubeh}(h]h ]h"]h$]h&]uh1jhj-ubeh}(h]h ]h"]h$]h&]colsKuh1juhjubeh}(h]id7ah ]h"]h$]h&]uh1jbhjhhhNhNubjV)}(hhh]h}(h]h ]h"]h$]h&]j`|p{6.6cm}|p{2.2cm}|p{8.5cm}|uh1jUhhhM8hjhhubh)}(h.. _ctrl-changes-flags:h]h}(h]h ]h"]h$]h&]hԌctrl-changes-flagsuh1hhM:hjhhhhubjc)}(hhh](h)}(hControl Changesh]hControl Changes}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhM<hjubjv)}(hhh](j{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhjubj{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhjubj{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhjubj)}(hhh](j)}(hhh](j)}(hhh]h)}(h``V4L2_EVENT_CTRL_CH_VALUE``h]j)}(hj(h]hV4L2_EVENT_CTRL_CH_VALUE}(hj*hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj&ubah}(h]h ]h"]h$]h&]uh1hhhhMAhj#ubah}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh]h)}(h0x0001h]h0x0001}(hjFhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhMBhjCubah}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh]h)}(hXThis control event was triggered because the value of the control changed. Special cases: Volatile controls do no generate this event; If a control has the ``V4L2_CTRL_FLAG_EXECUTE_ON_WRITE`` flag set, then this event is sent as well, regardless its value.h](hThis control event was triggered because the value of the control changed. Special cases: Volatile controls do no generate this event; If a control has the }(hj]hhhNhNubj)}(h#``V4L2_CTRL_FLAG_EXECUTE_ON_WRITE``h]hV4L2_CTRL_FLAG_EXECUTE_ON_WRITE}(hjehhhNhNubah}(h]h ]h"]h$]h&]uh1jhj]ubhA flag set, then this event is sent as well, regardless its value.}(hj]hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhMChjZubah}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h``V4L2_EVENT_CTRL_CH_FLAGS``h]j)}(hjh]hV4L2_EVENT_CTRL_CH_FLAGS}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhMGhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h0x0002h]h0x0002}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhMHhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(hCThis control event was triggered because the control flags changed.h]hCThis control event was triggered because the control flags changed.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhMIhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h``V4L2_EVENT_CTRL_CH_RANGE``h]j)}(hjh]hV4L2_EVENT_CTRL_CH_RANGE}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhMKhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h0x0004h]h0x0004}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhMLhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(hpThis control event was triggered because the minimum, maximum, step or the default value of the control changed.h]hpThis control event was triggered because the minimum, maximum, step or the default value of the control changed.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhMMhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h!``V4L2_EVENT_CTRL_CH_DIMENSIONS``h]j)}(hj?h]hV4L2_EVENT_CTRL_CH_DIMENSIONS}(hjAhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj=ubah}(h]h ]h"]h$]h&]uh1hhhhMOhj:ubah}(h]h ]h"]h$]h&]uh1jhj7ubj)}(hhh]h)}(h0x0008h]h0x0008}(hj]hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhMPhjZubah}(h]h ]h"]h$]h&]uh1jhj7ubj)}(hhh]h)}(hThis control event was triggered because the dimensions of the control changed. Note that the number of dimensions remains the same.h]hThis control event was triggered because the dimensions of the control changed. Note that the number of dimensions remains the same.}(hjthhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhMQhjqubah}(h]h ]h"]h$]h&]uh1jhj7ubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]colsKuh1juhjubeh}(h](id8jeh ]h"]ctrl-changes-flagsah$]h&]uh1jbhjhhhNhNj}jjsj}jjsubjV)}(hhh]h}(h]h ]h"]h$]h&]j`|p{6.6cm}|p{2.2cm}|p{8.5cm}|uh1jUhhhMVhjhhubh)}(h.. _src-changes-flags:h]h}(h]h ]h"]h$]h&]hԌsrc-changes-flagsuh1hhMXhjhhhhubjc)}(hhh](h)}(hSource Changesh]hSource Changes}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhMZhjubjv)}(hhh](j{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhjubj{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhjubj{)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jzhjubj)}(hhh]j)}(hhh](j)}(hhh]h)}(h ``V4L2_EVENT_SRC_CH_RESOLUTION``h]j)}(hjh]hV4L2_EVENT_SRC_CH_RESOLUTION}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhM_hjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h0x0001h]h0x0001}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhM`hjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](h)}(hThis event gets triggered when a resolution change is detected at an input. This can come from an input connector or from a video decoder. Applications will have to query the new resolution (if any, the signal may also have been lost).h]hThis event gets triggered when a resolution change is detected at an input. This can come from an input connector or from a video decoder. Applications will have to query the new resolution (if any, the signal may also have been lost).}(hj,hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhMahj)ubh)}(hFor stateful decoders follow the guidelines in :ref:`decoder`. Video Capture devices have to query the new timings using :ref:`VIDIOC_QUERY_DV_TIMINGS` or :ref:`VIDIOC_QUERYSTD `.h](h/For stateful decoders follow the guidelines in }(hj:hhhNhNubh)}(h:ref:`decoder`h]j)}(hjDh]hdecoder}(hjFhhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhjBubah}(h]h ]h"]h$]h&]refdocj refdomainjPreftyperef refexplicitrefwarnj$decoderuh1hhhhMfhj:ubh<. Video Capture devices have to query the new timings using }(hj:hhhNhNubh)}(h:ref:`VIDIOC_QUERY_DV_TIMINGS`h]j)}(hjhh]hVIDIOC_QUERY_DV_TIMINGS}(hjjhhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhjfubah}(h]h ]h"]h$]h&]refdocj refdomainjtreftyperef refexplicitrefwarnj$vidioc_query_dv_timingsuh1hhhhMfhj:ubh or }(hj:hhhNhNubh)}(h(:ref:`VIDIOC_QUERYSTD `h]j)}(hjh]hVIDIOC_QUERYSTD}(hjhhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftyperef refexplicitrefwarnj$vidioc_querystduh1hhhhMfhj:ubh.}(hj:hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhMfhj)ubh)}(hX*Important*: even if the new video timings appear identical to the old ones, receiving this event indicates that there was an issue with the video signal and you must stop and restart streaming (:ref:`VIDIOC_STREAMOFF ` followed by :ref:`VIDIOC_STREAMON `). The reason is that many Video Capture devices are not able to recover from a temporary loss of signal and so restarting streaming I/O is required in order for the hardware to synchronize to the video signal.h](j )}(h *Important*h]h Important}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j hjubh: even if the new video timings appear identical to the old ones, receiving this event indicates that there was an issue with the video signal and you must stop and restart streaming (}(hjhhhNhNubh)}(h):ref:`VIDIOC_STREAMOFF `h]j)}(hjh]hVIDIOC_STREAMOFF}(hjhhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftyperef refexplicitrefwarnj$vidioc_streamonuh1hhhhMkhjubh followed by }(hjhhhNhNubh)}(h(:ref:`VIDIOC_STREAMON `h]j)}(hjh]hVIDIOC_STREAMON}(hjhhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftyperef refexplicitrefwarnj$vidioc_streamonuh1hhhhMkhjubh). The reason is that many Video Capture devices are not able to recover from a temporary loss of signal and so restarting streaming I/O is required in order for the hardware to synchronize to the video signal.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhMkhj)ubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]colsKuh1juhjubeh}(h](id9jeh ]h"]src-changes-flagsah$]h&]uh1jbhjhhhNhNj}j6jsj}jjsubeh}(h] descriptionah ]h"] descriptionah$]h&]uh1hhhhhhhhK ubh)}(hhh](h)}(h Return Valueh]h Return Value}(hjFhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjChhhhhMuubh)}(hOn success 0 is returned, on error -1 and the ``errno`` variable is set appropriately. The generic error codes are described at the :ref:`Generic Error Codes ` chapter.h](h.On success 0 is returned, on error -1 and the }(hjThhhNhNubj)}(h ``errno``h]herrno}(hj\hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjTubhM variable is set appropriately. The generic error codes are described at the }(hjThhhNhNubh)}(h':ref:`Generic Error Codes `h]j)}(hjph]hGeneric Error Codes}(hjrhhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhjnubah}(h]h ]h"]h$]h&]refdocj refdomainj|reftyperef refexplicitrefwarnj$ gen-errorsuh1hhhhMwhjTubh chapter.}(hjThhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhMwhjChhubeh}(h] return-valueah ]h"] return valueah$]h&]uh1hhhhhhhhMuubeh}(h](ioctl-vidioc-dqeventheh ]h"](ioctl vidioc_dqeventvidioc_dqeventeh$]h&]uh1hhhhhhhhKj}jhsj}hhsubeh}(h]h ]h"]h$]h&]sourcehuh1hcurrent_sourceN current_lineNsettingsdocutils.frontendValues)}(hN generatorN datestampN source_linkN source_urlN toc_backlinksjfootnote_backlinksK sectnum_xformKstrip_commentsNstrip_elements_with_classesN strip_classesN report_levelK halt_levelKexit_status_levelKdebugNwarning_streamN tracebackinput_encoding utf-8-siginput_encoding_error_handlerstrictoutput_encodingutf-8output_encoding_error_handlerjerror_encodingutf-8error_encoding_error_handlerbackslashreplace language_codeenrecord_dependenciesNconfigN id_prefixhauto_id_prefixid dump_settingsNdump_internalsNdump_transformsNdump_pseudo_xmlNexpose_internalsNstrict_visitorN_disable_configN_sourcehnj _destinationN _config_files]7/var/lib/git/docbuild/linux/Documentation/docutils.confafile_insertion_enabled raw_enabledKline_length_limitM'pep_referencesN pep_base_urlhttps://peps.python.org/pep_file_url_templatepep-%04drfc_referencesN rfc_base_url&https://datatracker.ietf.org/doc/html/ tab_widthKtrim_footnote_reference_spacesyntax_highlightlong smart_quotessmartquotes_locales]character_level_inline_markupdoctitle_xform docinfo_xformKsectsubtitle_xform image_loadinglinkembed_stylesheetcloak_email_addressessection_self_linkenvNubreporterNindirect_targets]substitution_defs}substitution_names}refnames}refids}(h]haj ]jv aj]jaj]jaunameids}(jhjjjjjjjjj@j=jj jjj6jjju nametypes}(jjjjjj@jjj6juh}(hhjhjhjjj4j=jjj=jjjj j jjj2j7j{jjjjjjjjjjjCjg jdjj jjYj`jjqjjjjjjjj3ju footnote_refs} citation_refs} autofootnotes]autofootnote_refs]symbol_footnotes]symbol_footnote_refs] footnotes] citations]autofootnote_startKsymbol_footnote_startK id_counter collectionsCounter}jK sRparse_messages](hsystem_message)}(hhh]h)}(heUnexpected possible title overline or transition. Treating it as ordinary text because it's so short.h]hgUnexpected possible title overline or transition. Treating it as ordinary text because it’s so short.}(hj8hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj5ubah}(h]h ]h"]h$]h&]levelKtypeINFOlineKJsourcehuh1j3hjDubj4)}(hhh]h)}(heUnexpected possible title overline or transition. Treating it as ordinary text because it's so short.h]hgUnexpected possible title overline or transition. Treating it as ordinary text because it’s so short.}(hjThhhNhNubah}(h]h ]h"]h$]h&]uh1hhjQubah}(h]h ]h"]h$]h&]levelKtypejNlineKsourcehuh1j3hjubetransform_messages](j4)}(hhh]h)}(hhh]h4Hyperlink target "vidioc-dqevent" is not referenced.}hjqsbah}(h]h ]h"]h$]h&]uh1hhjnubah}(h]h ]h"]h$]h&]levelKtypejNsourcehnjlineKuh1j3ubj4)}(hhh]h)}(hhh]h0Hyperlink target "event-type" is not referenced.}hjsbah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]levelKtypejNsourcehnjlineKhuh1j3ubj4)}(hhh]h)}(hhh]h8Hyperlink target "ctrl-changes-flags" is not referenced.}hjsbah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]levelKtypejNsourcehnjlineM:uh1j3ubj4)}(hhh]h)}(hhh]h7Hyperlink target "src-changes-flags" is not referenced.}hjsbah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]levelKtypejNsourcehnjlineMXuh1j3ube transformerN include_log] decorationNhhub.