Video input is the process in which Pico-G1 receives video data over the MIPI interface and stores it in a designated memory area.

Camera / sensor -> video input device parses the timing -> physical PIPE processes the image -> channel crops/outputs -> DDR -> VPSS / encoder / display
Multiple camera inputs -> multiple devices / multiple PIPEs -> a grp defines the combination -> stitch / WDR joint processing -> channels output to DDR
A program generates or reads one frame -> a virtual PIPE receives it -> image processing -> channel output -> consumed by later modules
API reference
• xmedia_vi_init:initialize VI.
• xmedia_vi_exit:de-initialize VI.
• xmedia_vi_set_dev_config:set VI device attributes.
• xmedia_vi_get_dev_config:get VI device attributes.
• xmedia_vi_enable_dev_quick_start:enable quick start for a VI device.
• xmedia_vi_set_dev_mipi_phy_config:set manual MIPI PHY configuration for a VI device.
• xmedia_vi_enable_dev:enable a VI device.
• xmedia_vi_disable_dev:disable a VI device.
• xmedia_vi_set_dev_bind_pipe:bind a dev to a pipe one-to-one.
• xmedia_vi_set_dev_unbind_pipe:unbind a dev from a pipe.
• xmedia_vi_get_pipe_by_dev:get the pipe bound to a dev.
• xmedia_vi_set_grp_config:set the configuration of a VI compositing group.
• xmedia_vi_get_grp_config:get the configuration of a VI compositing group.
• xmedia_vi_create_pipe:create a VI PIPE.
• xmedia_vi_destroy_pipe:destroy a VI PIPE.
• xmedia_vi_get_pipe_config:get the configuration of a VI PIPE.
• xmedia_vi_start_pipe:start a VI PIPE.
• xmedia_vi_stop_pipe:stop a VI PIPE.
• xmedia_vi_set_user_pic:set a user picture.
• xmedia_vi_enable_user_pic:enable user-picture insertion on a VI PIPE.
• xmedia_vi_disable_user_pic:disable user-picture insertion on a VI PIPE.
• xmedia_vi_set_pipe_crop_attr:set the crop attributes of a physical VI PIPE.
• xmedia_vi_get_pipe_crop_attr:get the crop attributes of a physical VI PIPE.
• xmedia_vi_set_pipe_frame_dump_attr:set the frame dump attributes of a physical VI PIPE.
• xmedia_vi_get_pipe_frame_dump_attr:get the frame dump attributes of a physical VI PIPE.
• xmedia_vi_acquire_pipe_frame:acquire a frame from a physical VI PIPE.
• xmedia_vi_release_pipe_frame:release a frame acquired from a physical VI PIPE.
• xmedia_vi_set_pipe_frame_source:set the data source of a physical VI PIPE.
• xmedia_vi_get_pipe_frame_source:get the data source of a physical VI PIPE.
• xmedia_vi_send_pipe_frame:send frame data through a VI PIPE.
• xmedia_vi_set_pipe_compress_mode:set the compression mode of a physical VI PIPE.
• xmedia_vi_get_pipe_compress_mode:get the compression mode of a physical VI PIPE.
• xmedia_vi_set_pipe_frame_rate:set frame-rate control for a physical VI PIPE.
• xmedia_vi_get_pipe_frame_rate:get frame-rate control for a physical VI PIPE.
• xmedia_vi_set_pipe_low_delay_attr:set the low-latency attributes of a physical VI PIPE.
• xmedia_vi_get_pipe_low_delay_attr:get the low-latency attributes of a physical VI PIPE.
• xmedia_vi_query_pipe_status:query the status of a VI PIPE.
• xmedia_vi_set_pipe_vc_number:set the VC number of a physical VI PIPE for the connected sensor or AD.
• xmedia_vi_get_pipe_vc_number:get the VC number of a physical VI PIPE for the connected sensor or AD.
• xmedia_vi_set_pipe_mirror_flip:set mirror/flip output for a physical VI PIPE.
• xmedia_vi_get_pipe_mirror_flip:get mirror/flip output for a physical VI PIPE.
• xmedia_vi_set_chn_config:set VI channel configuration.
• xmedia_vi_get_chn_config:get VI channel configuration.
• xmedia_vi_enable_chn:enable a VI channel.
• xmedia_vi_disable_chn:disable a VI channel.
• xmedia_vi_set_chn_crop_attr:set the crop attributes of a VI channel.
• xmedia_vi_get_chn_crop_attr:get the crop attributes of a VI channel.
• xmedia_vi_set_chn_compress_mode:set the output compression mode of a VI channel.
• xmedia_vi_get_chn_compress_mode:get the output compression mode of a VI channel.
• xmedia_vi_set_chn_frame_rate:set frame-rate control for a VI channel.
• xmedia_vi_get_chn_frame_rate:get frame-rate control for a VI channel.
• xmedia_vi_set_chn_depth:set the queue depth for frames acquired from a VI channel.
• xmedia_vi_get_chn_depth:get the queue depth for frames acquired from a VI channel.
• xmedia_vi_set_chn_ldc_attr:set lens distortion correction (LDC) attributes for a VI channel.
• xmedia_vi_get_chn_ldc_attr:get lens distortion correction (LDC) attributes for a VI channel.
• xmedia_vi_set_chn_spread_attr:set the spread attributes of a VI channel.
• xmedia_vi_get_chn_spread_attr:get the spread attributes of a VI channel.
• xmedia_vi_set_chn_low_delay_attr:set the low-latency attributes of a VI channel.
• xmedia_vi_get_chn_low_delay_attr:get the low-latency attributes of a VI channel.
• xmedia_vi_set_chn_wrap_attr:set the wrap attributes of a VI channel.
• xmedia_vi_get_chn_wrap_attr:get the wrap attributes of a VI channel.
• xmedia_vi_set_chn_dis_config:set the DIS configuration of a VI channel.
• xmedia_vi_get_chn_dis_config:get the DIS configuration of a VI channel.
• xmedia_vi_set_chn_dis_attr:set the DIS attributes of a VI channel.
• xmedia_vi_get_chn_dis_attr:get the DIS attributes of a VI channel.
• xmedia_vi_set_chn_fov_correction_attr:set field-of-view correction attributes for a VI channel.
• xmedia_vi_get_chn_fov_correction_attr:get field-of-view correction attributes for a VI channel.
• xmedia_vi_set_chn_fisheye_attr:set fisheye attributes for a VI channel.
• xmedia_vi_get_chn_fisheye_attr:get fisheye attributes for a VI channel.
• xmedia_vi_fisheye_pos_query_dst_to_src:map an output coordinate of fisheye correction back to the source coordinate.
• xmedia_vi_set_chn_stitch_attr:set pre-stitch correction attributes for a VI channel.
• xmedia_vi_get_chn_stitch_attr:get pre-stitch correction attributes for a VI channel.
• xmedia_vi_select_chn_frame:check whether a frame is available in the output channel queue.
• xmedia_vi_acquire_chn_frame:acquire a captured frame from a VI channel.
• xmedia_vi_release_chn_frame:release a frame acquired from a VI channel.
• xmedia_vi_set_ext_chn_config:set extended channel attributes for VI.
• xmedia_vi_get_ext_chn_config:get extended channel attributes for VI.
• xmedia_vi_attach_pipe_vb_pool:bind a memory pool to a pipe.
• xmedia_vi_detach_pipe_vb_pool:unbind the memory pool from a pipe.
• xmedia_vi_attach_chn_vb_pool:bind a memory pool to a channel.
• xmedia_vi_detach_chn_vb_pool:unbind the memory pool from a channel.
• xmedia_vi_attach_ainr_vb_pool:bind a memory pool to a pipe's AINR output.
• xmedia_vi_detach_ainr_vb_pool:unbind the memory pool from a pipe's AINR output.
• xmedia_vi_get_pipe_fd:get the pipe file descriptor.
• xmedia_vi_get_chn_fd:get the channel file descriptor.
Tip
See sample_vio for a working example.