# Smart codec Source: [https://docs.qualcomm.com/doc/80-70022-50/topic/smart-codec.html](https://docs.qualcomm.com/doc/80-70022-50/topic/smart-codec.html) The **gst-smartcodec-example** application reduces bandwidth and storage resources based on scene change estimate thresholds. The smart codec plugin, [qtismartvencbin](https://docs.qualcomm.com/doc/80-70022-50/topic/qtismartvencbin.html), uses smart fps, smart I-frame, smart bit rate, and smart ROI to do the following: - Decrease the bit rate without compromising the quality. - Enable efficient use of network and storage resources. The following figure shows the pipeline flow for a two-stream use case. For more information, see [Pipeline flow](https://docs.qualcomm.com/doc/80-70022-50/topic/smart-codec.html#smart-codec__section_rcj_tl2_ncc). Figure : gst-smartcodec-example pipeline for two streams qtiqmmfsrc capsfilter Sink(qtismartvencabin) v4l2h264enc h264parse mp4mux filesink capsfilter Sink(qtismartvencabin) Qualcomm Open source ## Run the application 1. Ensure that you complete the [Prerequisites](https://docs.qualcomm.com/doc/80-70022-50/topic/mm_sample_apps_prerequisites.html). 2. To access the target device from your host computer, set up SSH. For instructions, see [Sign in using SSH](https://docs.qualcomm.com/bundle/publicresource/topics/80-70022-254/how_to.html#use-ssh). 3. In the terminal of the host computer, enter the SSH shell to: - Run the use cases: ssh root@Copy to clipboard - Push the files from host computer: scp root@:/etc/media/Copy to clipboard 4. In the terminal of the target device, run the use case with a camera source: gst-smartcodec-example -w 1920 -h 1080 -o video.mp4Copy to clipboard 5. To stop the use case, use CTRL + C. 6. In the terminal of the target device, run the following command in the SSH shell to display the available help options: gst-smartcodec-example --helpCopy to clipboard ## Expected output The application generates the output as an encoded MP4 file. The following table lists the file sizes of a 1080p video with and without smart codec. Table : Smart codec–file sizes | Smart codec | File size | | :--- | :--- | | Enabled | 3718 KB | | Disabled | 17706 KB | ## Pipeline flow The following table lists the plugins used in the smart codec pipeline: | Plugin | Description | | --- | --- | | [qtiqmmfsrc](https://docs.qualcomm.com/doc/80-70022-50/topic/qtiqmmfsrc.html) |

  1. Captures the video stream.


  2. Feeds the stream to capsfilter.


| | Capsfilter | Branches the source into two separate pipelines. In one pipeline,
[qtismartvencbin](https://docs.qualcomm.com/doc/80-70022-50/topic/qtismartvencbin.html) processes the output. | | Capsfilter | In the other pipeline, the video undergoes the following:

  1. Encoded using v4l2h264enc.


  2. Parsed with h264parse.


  3. Multiplexed into an MP4 format with mp4mux.


  4. Written to a file using filesink.


| | | | ## Related information [AI smart codec](https://docs.qualcomm.com/doc/80-70022-50/topic/ai-smart-codec.html) **Parent Topic:** [Run sample applications for video and audio](https://docs.qualcomm.com/doc/80-70022-50/topic/audio-sample-applications.html) Last Published: Feb 20, 2026 [Previous Topic Video wall](https://docs.qualcomm.com/bundle/publicresource/80-70022-50/topics/gst-concurrent-videoplay-composition.md) [Next Topic Multi format decode](https://docs.qualcomm.com/bundle/publicresource/80-70022-50/topics/gst-videocodec-concurrent-playback.md)