MIPI CSI
GStreamer
This page describes how to connect camera sensors to your reference hardware platform and make it up and running in 3 Simple steps.
- QCS6490
- IQ-8275-EVK
- IQ-9075-EVK
- IQ615
- IQx7181
📸 Get QCS6490 Camera Up and Running in 3 Simple Steps
🔌 Plug & Play: Camera Hardware Setup
Camera Setup
Camera Setup

🧰 Ready Check: Prerequisites
Prerequisites
Prerequisites
See How To SSH? for instructions.
Enable camera functionality
echo -n "camx" > /var/data
efivar -n 882f8c2b-9646-435f-8de5-f208ff80c1bd-VendorDtbOverlays -w -f /var/data
efivar -n 882f8c2b-9646-435f-8de5-f208ff80c1bd-VendorDtbOverlays -p
sync
reboot
Clear GStreamer registry (if needed)
rm ~/.cache/gstreamer-1.0/registry.aarch64.bin
Log Level Tuning (if needed)
echo 4 > /proc/sys/kernel/printk
🎥 Action! Start Video Capture
Capture Video
Capture Video
Video encoding
Run the pipeline
gst-launch-1.0 -e qtiqmmfsrc name=camsrc camera=0 ! \
video/x-raw,format=NV12,width=1280,height=720,framerate=30/1,\
interlace-mode=progressive,colorimetry=bt601 ! v4l2h264enc \
capture-io-mode=4 output-io-mode=5 extra-controls="controls,video_bitrate=6000000,\
video_bitrate_mode=0;" ! h264parse ! mp4mux ! filesink location=/opt/mux_avc.mp4
Pull recorded content
/opt/mux_avc.mp4 is generated on the device. The recorded content can be pulled from the device by running the following scp command on the host PC:$ scp -r root@[ip-addr]:/opt/mux_avc.mp4 .
📸 Get IQ-8275-EVK Camera up and running in 3 Simple steps.
🔌 Plug & Play: Camera Hardware Setup
Camera Setup
Camera Setup

🧰 Ready Check: Prerequisites
Prerequisites
Prerequisites
See How To SSH? for instructions.
Enable camera functionality
echo -n "camx" > /var/data
efivar -n 882f8c2b-9646-435f-8de5-f208ff80c1bd-VendorDtbOverlays -w -f /var/data
efivar -n 882f8c2b-9646-435f-8de5-f208ff80c1bd-VendorDtbOverlays -p
sync
reboot
Clear GStreamer registry (if needed)
rm ~/.cache/gstreamer-1.0/registry.aarch64.bin
Known Issue: Camera basic use-case on IQ8
git clone https://github.com/qualcomm-linux/meta-qcom -b qli-2.0
cd meta-qcom
git fetch origin pull/2619/head
git cherry-pick 1e885404be0191a7b89bd853aba4ef6c28b9295f^..2a1a38963d40b8da079a7b640b363070d9eee18f
cd ..
kas build meta-qcom/ci/iq-8275-evk.yml:meta-qcom/ci/qcom-distro.yml
cp /usr/share/qcom/sa8775p/Qualcomm/SA8775P-RIDE/dsp/cdsp/libbitml_nsp_73nb_skel.so /usr/share/qcom/qcs8300/Qualcomm/IQ8275-EVK/dsp/cdsp/.
Log Level Tuning (if needed)
echo 4 > /proc/sys/kernel/printk
🎥 Action! Start Video Capture
Capture Video
Capture Video
Video encoding
Run the pipeline
gst-launch-1.0 -e qtiqmmfsrc name=camsrc camera=0 ! \
video/x-raw,format=NV12,width=1280,height=720,framerate=30/1,\
interlace-mode=progressive,colorimetry=bt601 ! v4l2h264enc \
capture-io-mode=4 output-io-mode=5 extra-controls="controls,video_bitrate=6000000,\
video_bitrate_mode=0;" ! h264parse ! mp4mux ! filesink location=/opt/mux_avc.mp4
Pull recorded content
/opt/mux_avc.mp4 is generated on the device. The recorded content can be pulled from the device by running the following scp command on the host PC:$ scp -r root@[ip-addr]:/opt/mux_avc.mp4 .
📸 Get IQ-9075-EVK Camera up and running in 3 Simple steps.
🔌 Plug & Play: Camera Hardware Setup
Camera Setup
Camera Setup

🧰 Ready Check: Prerequisites
Prerequisites
Prerequisites
See How To SSH? for instructions.
Enable camera functionality
echo -n "camx" > /var/data
efivar -n 882f8c2b-9646-435f-8de5-f208ff80c1bd-VendorDtbOverlays -w -f /var/data
efivar -n 882f8c2b-9646-435f-8de5-f208ff80c1bd-VendorDtbOverlays -p
sync
reboot
Clear GStreamer registry (if needed)
rm ~/.cache/gstreamer-1.0/registry.aarch64.bin
Log Level Tuning (if needed)
echo 4 > /proc/sys/kernel/printk
🎥 Action! Start Video Capture
Capture Video
Capture Video
Video encoding
Run the pipeline
gst-launch-1.0 -e qtiqmmfsrc name=camsrc camera=0 ! \
video/x-raw,format=NV12,width=1280,height=720,framerate=30/1,\
interlace-mode=progressive,colorimetry=bt601 ! v4l2h264enc \
capture-io-mode=4 output-io-mode=5 extra-controls="controls,video_bitrate=6000000,\
video_bitrate_mode=0;" ! h264parse ! mp4mux ! filesink location=/opt/mux_avc.mp4
Pull recorded content
/opt/mux_avc.mp4 is generated on the device. The recorded content can be pulled from the device by running the following scp command on the host PC:$ scp -r root@[ip-addr]:/opt/mux_avc.mp4 .
📸 Get IQ615 Camera up and running in 3 Simple steps.
🔌 Plug & Play: Camera Hardware Setup
Camera Setup
Camera Setup

🧰 Ready Check: Prerequisites
Prerequisites
Prerequisites
See How To SSH? for instructions.
Enable camera functionality
echo -n "camx" > /var/data
efivar -n 882f8c2b-9646-435f-8de5-f208ff80c1bd-VendorDtbOverlays -w -f /var/data
efivar -n 882f8c2b-9646-435f-8de5-f208ff80c1bd-VendorDtbOverlays -p
sync
reboot
Clear GStreamer registry (if needed)
rm ~/.cache/gstreamer-1.0/registry.aarch64.bin
Log Level Tuning (if needed)
echo 4 > /proc/sys/kernel/printk
🎥 Action! Start Video Capture
Capture Video
Capture Video
Video encoding
Run the pipeline
gst-launch-1.0 -e qtiqmmfsrc name=camsrc camera=0 ! \
video/x-raw,format=NV12,width=1280,height=720,framerate=30/1,\
interlace-mode=progressive,colorimetry=bt601 ! v4l2h264enc \
capture-io-mode=4 output-io-mode=5 extra-controls="controls,video_bitrate=6000000,\
video_bitrate_mode=0;" ! h264parse ! mp4mux ! filesink location=/opt/mux_avc.mp4
Pull recorded content
/opt/mux_avc.mp4 is generated on the device. The recorded content can be pulled from the device by running the following scp command on the host PC:$ scp -r root@[ip-addr]:/opt/mux_avc.mp4 .
📸 Get IQx7181 Camera up and running in 3 Simple steps.
🔌 Plug & Play: Camera Hardware Setup
Camera Setup
Camera Setup

🧰 Ready Check: Prerequisites
Prerequisites
Prerequisites
See How To SSH? for instructions.
Enable camera functionality
echo -n "camx" > /var/data
efivar -n 882f8c2b-9646-435f-8de5-f208ff80c1bd-VendorDtbOverlays -w -f /var/data
efivar -n 882f8c2b-9646-435f-8de5-f208ff80c1bd-VendorDtbOverlays -p
sync
reboot
Clear GStreamer registry (if needed)
rm ~/.cache/gstreamer-1.0/registry.aarch64.bin
Log Level Tuning (if needed)
echo 4 > /proc/sys/kernel/printk
🎥 Action! Start Video Capture
Capture Video
Capture Video
Video encoding
Run the pipeline
gst-launch-1.0 -e qtiqmmfsrc name=camsrc camera=0 ! \
video/x-raw,format=NV12,width=1280,height=720,framerate=30/1,\
interlace-mode=progressive,colorimetry=bt601 ! v4l2h264enc \
capture-io-mode=4 output-io-mode=5 extra-controls="controls,video_bitrate=6000000,\
video_bitrate_mode=0;" ! h264parse ! mp4mux ! filesink location=/opt/mux_avc.mp4
Pull recorded content
/opt/mux_avc.mp4 is generated on the device. The recorded content can be pulled from the device by running the following scp command on the host PC:$ scp -r root@[ip-addr]:/opt/mux_avc.mp4 .

