This example uses the Virtual Streaming Interface (VSI) to simulate an input from a peripheral video sensor.
Application firmware defines video input configuration in app.c file. The video vsi python scripts read the specified image/video file and send it to the application running on an AVH FVP Model where it gets displayed on the model LCD screen.
See Video over VSI documentation for more information about the implementation of video driver for AVH FVPs.
This is a minimal example of how to use Video over VSI, and you can modify the python script and the video driver in order to match your use case.
The example is provided in csolution format and can be build in an IDE, or in command line interface using cbuild utility from CMSIS-Toolbox.
The example supports Corstone-310 and Corstone-300 targets and can be compiled with Arm Compiler 6 (AC6) or GCC.
The path to the input image/video file is specified in the app.c
file as INPUT_IMAGE
and by default is ./samples/typing.mp4
. The path is relative to the current location and assumes the execution from the ./hello_video_vsi/
folder.
Project build type .lcd_out
uses model's lcd to display the file content. For example, to build and run the example on Corstone-310 FVP with GCC toolchaing use:
Compile:
cbuild hello_video_vsi.csolution.yml --packs --rebuild --toolchain GCC --context .lcd_out+Corstone_310
Run the program in .elf format when compiled in GCC:
FVP_Corstone_SSE-310 -a ./out/hello_video_vsi/Corstone_310/lcd_out/GCC/hello_video_vsi.elf -C mps3_board.v_path=./source/vsi/video_vsi_py/
To compile with Arm Compiler use --toolchain AC6
option. With Arm Compiler an .axf file is generated and should be loaded in the same way as shown above.