# v4l2h265enc

Source: [https://docs.qualcomm.com/doc/80-70022-50/topic/v4l2h265enc.html](https://docs.qualcomm.com/doc/80-70022-50/topic/v4l2h265enc.html)

The v4l2h265enc plugin uses V4L2 APIs for encoding of video stream.

- The plugin uses the H.265 video encoder to provide hardware accelerated H.265
                (MPEG-H Part 2) encoding on supported platforms
- The plugin is based on [GstVideoEncoder](https://gstreamer.freedesktop.org/documentation/video/gstvideoencoder.html?gi-language=c) base class.

## Inheritance chain

[GObject](https://docs.gtk.org/gobject/) → [GstObject](https://gstreamer.freedesktop.org/documentation/gstreamer/gstobject.html?gi-language=c) → [GstElement](https://gstreamer.freedesktop.org/documentation/gstreamer/gstelement.html?gi-language=c) → [GstVideoEncoder](https://gstreamer.freedesktop.org/documentation/video/gstvideoencoder.html?gi-language=c) → GstV4l2VideoEnc →
                v4l2h265enc

The following tables provide information on pad templates and element properties of
                v4l2h265enc. For use cases, see [Video encode and decode](https://docs.qualcomm.com/doc/80-70022-50/topic/camera-and-video-encode.html) and
                    [Slice-based encoding](https://docs.qualcomm.com/doc/80-70022-50/topic/camera-and-video-encode.html#slice-based-encoding).

## Pad configuration

| Pad Name | Capabilities | Capabilities | Capabilities |
| --- | --- | --- | --- |
| SINK template: 'sink'<br><ul class="ul" id="v4l2h265enc__ul_wkg_csz_q1c"><br>                                    <li class="li"><em class="ph i">Availability:</em> Always</li><br><br>                                    <li class="li"><em class="ph i">Direction:</em> sink</li><br><br>                                </ul> | video/x-raw | format: | { (string)NV12, (string)NV21 } |
| SINK template: 'sink'<br><ul class="ul" id="v4l2h265enc__ul_wkg_csz_q1c"><br>                                    <li class="li"><em class="ph i">Availability:</em> Always</li><br><br>                                    <li class="li"><em class="ph i">Direction:</em> sink</li><br><br>                                </ul> | video/x-raw | width: | [ 1, 32768 ] |
| SINK template: 'sink'<br><ul class="ul" id="v4l2h265enc__ul_wkg_csz_q1c"><br>                                    <li class="li"><em class="ph i">Availability:</em> Always</li><br><br>                                    <li class="li"><em class="ph i">Direction:</em> sink</li><br><br>                                </ul> | video/x-raw | height: | [ 1, 32768 ] |
| SINK template: 'sink'<br><ul class="ul" id="v4l2h265enc__ul_wkg_csz_q1c"><br>                                    <li class="li"><em class="ph i">Availability:</em> Always</li><br><br>                                    <li class="li"><em class="ph i">Direction:</em> sink</li><br><br>                                </ul> | video/x-raw | framerate: | [ 0/1, 2147483647/1 ] |
| SRC template: 'src'<br><ul class="ul" id="v4l2h265enc__ul_xkg_csz_q1c"><br>                                    <li class="li"><em class="ph i">Availability:</em> Always</li><br><br>                                    <li class="li"><em class="ph i">Direction:</em> source</li><br><br>                                </ul> | video/x-h265 | alignment: | au |
| SRC template: 'src'<br><ul class="ul" id="v4l2h265enc__ul_xkg_csz_q1c"><br>                                    <li class="li"><em class="ph i">Availability:</em> Always</li><br><br>                                    <li class="li"><em class="ph i">Direction:</em> source</li><br><br>                                </ul> | video/x-h265 | stream-format: | byte-stream |
|  |  |  |  |
|  |  |  |  |
|  |  |  |  |

## Element configuration

Table : Element properties of v4l2h265enc

| Property | Description |
| --- | --- |
| capture-io-mode | Capture I/O mode (matches src pad).<br><ul class="ul" id="v4l2h265enc__ul_jt5_2sz_q1c"><br>                                    <li class="li">flags: readable, writable</li><br><br>                                    <li class="li">Enum "GstV4l2IOMode" Default: 0, "auto"<ul class="ul" id="v4l2h265enc__ul_sdl_hsz_q1c"><br>                                            <li class="li">(0): auto - GST_V4L2_IO_AUTO</li><br><br>                                            <li class="li">(1): rw - GST_V4L2_IO_RW</li><br><br>                                            <li class="li">(2): mmap - GST_V4L2_IO_MMAP</li><br><br>                                            <li class="li"> (3): userptr - GST_V4L2_IO_USERPTR</li><br><br>                                            <li class="li">(4): dmabuf - GST_V4L2_IO_DMABUF</li><br><br>                                            <li class="li">(5): dmabuf-import - GST_V4L2_IO_DMABUF_IMPORT</li><br><br>                                        </ul><br><br>                                    </li><br><br>                                </ul> |
| device | The device location.<ul class="ul" id="v4l2h265enc__ul_kt5_2sz_q1c"><br>                                    <li class="li">flags: readable</li><br><br>                                    <li class="li">String. Default: "/dev/video1"</li><br><br>                                </ul> |
| device-fd | The file descriptor of the device.<br><ul class="ul" id="v4l2h265enc__ul_lt5_2sz_q1c"><br>                                    <li class="li">flags: readable</li><br><br>                                    <li class="li">Integer. Range: ˗1 to 2147483647, default: ˗1</li><br><br>                                </ul> |
| device-name | The name of the device.<br><ul class="ul" id="v4l2h265enc__ul_mt5_2sz_q1c"><br>                                    <li class="li">flags: readable</li><br><br>                                    <li class="li">String. Default: null</li><br><br>                                </ul> |
| extra-controls | The extra v4l2 controls (CIDs) for the device.<br><ul class="ul" id="v4l2h265enc__ul_nt5_2sz_q1c"><br>                                    <li class="li">flags: readable, writable</li><br><br>                                    <li class="li">Boxed pointer of type "GstStructure"</li><br><br>                                </ul> |
| min-force-key-unit-interval | The minimum interval between force-key-unit requests in<br>                                    nanoseconds.<br><ul class="ul" id="v4l2h265enc__ul_ot5_2sz_q1c"><br>                                    <li class="li">flags: readable, writable</li><br><br>                                    <li class="li">Unsigned Integer64. Range: 0 - 18446744073709551615 Default:<br>                                        0</li><br><br>                                </ul> |
| name | The name of the object.<br><ul class="ul" id="v4l2h265enc__ul_pt5_2sz_q1c"><br>                                    <li class="li">flags: readable, writable, 0x2000</li><br><br>                                    <li class="li">String. Default: "v4l2h265enc0"</li><br><br>                                </ul> |
| output-io-mode | The output side I/O mode (matches sink pad).<br><ul class="ul" id="v4l2h265enc__ul_qt5_2sz_q1c"><br>                                    <li class="li">flags: readable, writable</li><br><br>                                    <li class="li"><br>                                        <p class="p">Enum "GstV4l2IOMode" Default: 0, "auto"</p><ul class="ul" id="v4l2h265enc__ul_v2h_lsz_q1c"><br>                                            <li class="li"> (0): auto - GST_V4L2_IO_AUTO</li><br><br>                                            <li class="li"> (1): rw - GST_V4L2_IO_RW</li><br><br>                                            <li class="li"> (2): mmap - GST_V4L2_IO_MMAP</li><br><br>                                            <li class="li"> (3): userptr - GST_V4L2_IO_USERPTR</li><br><br>                                            <li class="li"> (4): dmabuf - GST_V4L2_IO_DMABUF</li><br><br>                                            <li class="li"> (5): dmabuf-import - GST_V4L2_IO_DMABUF_IMPORT</li><br><br>                                        </ul><br><br>                                    </li><br><br>                                </ul> |
| parent | The parent of the object.<br><ul class="ul" id="v4l2h265enc__ul_rt5_2sz_q1c"><br>                                    <li class="li">flags: readable, writable, 0x2000</li><br><br>                                    <li class="li">Object of type "GstObject"</li><br><br>                                </ul> |
| qos | Handle quality-of-service events from downstream.<br><ul class="ul" id="v4l2h265enc__ul_st5_2sz_q1c"><br>                                    <li class="li">flags: readable, writable</li><br><br>                                    <li class="li">Boolean. Default: true</li><br><br>                                </ul> |

The following table lists the codec controls for H.265. For the general v4l2ctl user
                and codec controls, see [Table : v4l2ctl extra-controls–user controls](https://docs.qualcomm.com/doc/80-70022-50/topic/v4l2h264enc.html#v4l2h264enc__table_ss2_ljc_fbc) and [Table : v4l2ctl extra-controls–codec controls](https://docs.qualcomm.com/doc/80-70022-50/topic/v4l2h264enc.html#v4l2h264enc__table_o4d_tjc_fbc).

Table : v4l2ctl–H.265 codec controls

| Control name | Control type | Parameters |
| --- | --- | --- |
| hevc\_minimum\_qp\_value | Integer | <ul class="ul" id="v4l2h265enc__ul_upk_5kc_fbc"><br>                                    <li class="li">min=1</li><br><br>                                    <li class="li">max=51</li><br><br>                                    <li class="li">step=1</li><br><br>                                    <li class="li">value=1; this is the default value</li><br><br>                                    <li class="li">flags=execute-on-write</li><br><br>                                </ul> |
| hevc\_maximum\_qp\_value | Integer | <ul class="ul" id="v4l2h265enc__ul_vpk_5kc_fbc"><br>                                    <li class="li">min=1</li><br><br>                                    <li class="li">max=51</li><br><br>                                    <li class="li">step=1</li><br><br>                                    <li class="li">value=51; this is the default value </li><br><br>                                    <li class="li">flags=execute-on-write</li><br><br>                                </ul> |
| hevc\_i\_frame\_qp\_value | Integer | <ul class="ul" id="v4l2h265enc__ul_wpk_5kc_fbc"><br>                                    <li class="li">min=1</li><br><br>                                    <li class="li">max=51</li><br><br>                                    <li class="li">step=1</li><br><br>                                    <li class="li">value=20; this is the default value</li><br><br>                                    <li class="li">flags=execute-on-write</li><br><br>                                </ul> |
| hevc\_p\_frame\_qp\_value | Integer | <ul class="ul" id="v4l2h265enc__ul_xpk_5kc_fbc"><br>                                    <li class="li">min=1</li><br><br>                                    <li class="li">max=51</li><br><br>                                    <li class="li">step=1</li><br><br>                                    <li class="li">value=20; this is the default value</li><br><br>                                    <li class="li">flags=execute-on-write</li><br><br>                                </ul> |
| hevc\_b\_frame\_qp\_value | Integer | <ul class="ul" id="v4l2h265enc__ul_ypk_5kc_fbc"><br>                                    <li class="li">min=1</li><br><br>                                    <li class="li">max=51</li><br><br>                                    <li class="li">step=1</li><br><br>                                    <li class="li">value=20; this is the default value </li><br><br>                                    <li class="li">flags=execute-on-write</li><br><br>                                </ul> |
| hevc\_hierarchical\_coding\_type | Menu | <ul class="ul" id="v4l2h265enc__ul_aqk_5kc_fbc"><br>                                    <li class="li">min=0 </li><br><br>                                    <li class="li">max=1 </li><br><br>                                    <li class="li">value=1 (P)<ul class="ul" id="v4l2h265enc__ul_zpk_5kc_fbc"><br>                                            <li class="li">0: B</li><br><br>                                            <li class="li">1: P; this is the default value</li><br><br>                                        </ul><br><br>                                    </li><br><br>                                    <li class="li">flags=execute-on-write</li><br><br>                                </ul> |
| hevc\_hierarchical\_coding\_layer | Integer | <ul class="ul" id="v4l2h265enc__ul_bqk_5kc_fbc"><br>                                    <li class="li">min=0</li><br><br>                                    <li class="li">max=5</li><br><br>                                    <li class="li">step=1</li><br><br>                                    <li class="li">value=0; this is the default value </li><br><br>                                    <li class="li">flags=execute-on-write</li><br><br>                                </ul> |
| hevc\_profile | Menu | <ul class="ul" id="v4l2h265enc__ul_dqk_5kc_fbc"><br>                                    <li class="li">min=0</li><br><br>                                    <li class="li">max=2</li><br><br>                                    <li class="li">default=0</li><br><br>                                    <li class="li">value=0 (Main)<ul class="ul" id="v4l2h265enc__ul_cqk_5kc_fbc"><br>                                            <li class="li">0: Main; this is the default value</li><br><br>                                            <li class="li">1: Main Still Picture</li><br><br>                                            <li class="li">2: Main 10</li><br><br>                                        </ul><br></li><br><br>                                    <li class="li">flags=execute-on-write</li><br><br>                                </ul> |
| hevc\_level | Menu | <ul class="ul" id="v4l2h265enc__ul_fqk_5kc_fbc"><br>                                    <li class="li">min=0 </li><br><br>                                    <li class="li">max=7</li><br><br>                                    <li class="li">value=7 (5)<ul class="ul" id="v4l2h265enc__ul_eqk_5kc_fbc"><br>                                            <li class="li">0: 1</li><br><br>                                            <li class="li">1: 2</li><br><br>                                            <li class="li">2: 2.1</li><br><br>                                            <li class="li">3: 3</li><br><br>                                            <li class="li">4: 3.1</li><br><br>                                            <li class="li">5: 4</li><br><br>                                            <li class="li">6: 4.1</li><br><br>                                            <li class="li">7: 5; this is the default value</li><br><br>                                        </ul><br></li><br><br>                                    <li class="li">flags=execute-on-write</li><br><br>                                </ul> |
| hevc\_hierarchical\_lay\_0\_bitrate | Integer | <ul class="ul" id="v4l2h265enc__ul_gqk_5kc_fbc"><br>                                    <li class="li">min=1</li><br><br>                                    <li class="li">max=100000000 </li><br><br>                                    <li class="li">step=1</li><br><br>                                    <li class="li">value=20000000; this is the default value</li><br><br>                                    <li class="li">flags=execute-on-write</li><br><br>                                </ul> |
| hevc\_hierarchical\_lay\_1\_bitrate | Integer | <ul class="ul" id="v4l2h265enc__ul_hqk_5kc_fbc"><br>                                    <li class="li">min=1</li><br><br>                                    <li class="li">max=100000000</li><br><br>                                    <li class="li">step=1 </li><br><br>                                    <li class="li">default=20000000; this is the default value </li><br><br>                                    <li class="li">flags=execute-on-write</li><br><br>                                </ul> |
| hevc\_hierarchical\_lay\_2\_bitrate | Integer | <ul class="ul" id="v4l2h265enc__ul_iqk_5kc_fbc"><br>                                    <li class="li">min=1</li><br><br>                                    <li class="li">max=100000000</li><br><br>                                    <li class="li">step=1</li><br><br>                                    <li class="li">value=20000000; this is the default value </li><br><br>                                    <li class="li">flags=execute-on-write</li><br><br>                                </ul> |
| hevc\_hierarchical\_lay\_3\_bitrate | Integer | <ul class="ul" id="v4l2h265enc__ul_jqk_5kc_fbc"><br>                                    <li class="li">min=1</li><br><br>                                    <li class="li">max=100000000</li><br><br>                                    <li class="li">step=1</li><br><br>                                    <li class="li">value=20000000; this is the default value</li><br><br>                                    <li class="li">flags=execute-on-write</li><br><br>                                </ul> |
| hevc\_hierarchical\_lay\_4\_bitrate | Integer | <ul class="ul" id="v4l2h265enc__ul_kqk_5kc_fbc"><br>                                    <li class="li">min=1</li><br><br>                                    <li class="li">max=100000000</li><br><br>                                    <li class="li">step=1 </li><br><br>                                    <li class="li">value=20000000; this is the default value</li><br><br>                                    <li class="li">flags=execute-on-write</li><br><br>                                </ul> |
| hevc\_hierarchical\_lay\_5\_bitrate | Integer | <ul class="ul" id="v4l2h265enc__ul_lqk_5kc_fbc"><br>                                    <li class="li">min=1</li><br><br>                                    <li class="li">max=100000000</li><br><br>                                    <li class="li">step=1 </li><br><br>                                    <li class="li">value=20000000; this is the default value</li><br><br>                                    <li class="li">flags=execute-on-write</li><br><br>                                </ul> |
| hevc\_i\_frame\_minimum\_qp\_value | Integer | <ul class="ul" id="v4l2h265enc__ul_mqk_5kc_fbc"><br>                                    <li class="li">min=1</li><br><br>                                    <li class="li">max=51</li><br><br>                                    <li class="li">step=1 </li><br><br>                                    <li class="li">value=1; this is the default value </li><br><br>                                    <li class="li">flags=execute-on-write</li><br><br>                                </ul> |
| hevc\_i\_frame\_maximum\_qp\_value | Integer | <ul class="ul" id="v4l2h265enc__ul_nqk_5kc_fbc"><br>                                    <li class="li">min=1 </li><br><br>                                    <li class="li">max=51 </li><br><br>                                    <li class="li">step=1 </li><br><br>                                    <li class="li">value=51; this is the default value </li><br><br>                                    <li class="li">flags=execute-on-write</li><br><br>                                </ul> |
| hevc\_p\_frame\_minimum\_qp\_value | Integer | <ul class="ul" id="v4l2h265enc__ul_oqk_5kc_fbc"><br>                                    <li class="li">min=1 </li><br><br>                                    <li class="li">max=51 </li><br><br>                                    <li class="li">step=1 </li><br><br>                                    <li class="li">value=1; this is the default value </li><br><br>                                    <li class="li">flags=execute-on-write</li><br><br>                                </ul> |
| hevc\_p\_frame\_maximum\_qp\_value | Integer | <ul class="ul" id="v4l2h265enc__ul_pqk_5kc_fbc"><br>                                    <li class="li">min=1</li><br><br>                                    <li class="li">max=51 </li><br><br>                                    <li class="li">step=1 </li><br><br>                                    <li class="li">value=51; this is the default value </li><br><br>                                    <li class="li">flags=execute-on-write</li><br><br>                                </ul> |
| hevc\_b\_frame\_minimum\_qp\_value | Integer | <ul class="ul" id="v4l2h265enc__ul_qqk_5kc_fbc"><br>                                    <li class="li">min=1 </li><br><br>                                    <li class="li">max=51 </li><br><br>                                    <li class="li">step=1 </li><br><br>                                    <li class="li">value=1; this is the default value </li><br><br>                                    <li class="li">flags=execute-on-write</li><br><br>                                </ul> |
| hevc\_b\_frame\_maximum\_qp\_value | Integer | <ul class="ul" id="v4l2h265enc__ul_rqk_5kc_fbc"><br>                                    <li class="li">min=1 </li><br><br>                                    <li class="li">max=51 </li><br><br>                                    <li class="li">step=1 </li><br><br>                                    <li class="li">value=51; this is the default value </li><br><br>                                    <li class="li">flags=execute-on-write</li><br><br>                                </ul> |

**Parent Topic:** [Configure display, camera, encode and decode plugins](https://docs.qualcomm.com/doc/80-70022-50/topic/display-plugins.html)

Last Published: Feb 20, 2026

[Previous Topic
v4l2h264enc](https://docs.qualcomm.com/bundle/publicresource/80-70022-50/topics/v4l2h264enc.md) [Next Topic
v4l2vp9dec](https://docs.qualcomm.com/bundle/publicresource/80-70022-50/topics/v4l2vp9dec.md)