Skip to main content

No.Model NameDescription
1QuickSRNetLargeFast super-resolution network (large) for video upscaling.
1

Download Required Files

FileSave as
Modelquicksrnetlarge_float.tflite
Input videoai_demo_sample.mp4
If any downloaded file is a .zip archive, extract it on your host machine before copying: unzip filename.zip
2

Copy Files to Device

# Replace $HOME to the appropriate device path before running the commands.
# For QLI:    /root
# For Ubuntu: /home/ubuntu
# Modify this based on your platform and ensure files are copied to the correct location on the device.

ssh <user>@<device-ip> "mkdir -p $HOME/{models,media,media/output}"
scp quicksrnetlarge_float.tflite     <user>@<device-ip>:$HOME/models/
scp ai_demo_sample.mp4  <user>@<device-ip>:$HOME/media/
3

Connect to device

# Run from your host machine — replace <user> and <device-ip>
ssh <user>@<device-ip>
4

Set Environment Variables

Qualcomm Linux
export MODEL_NAME=quicksrnetlarge_float.tflite
export SRC_VIDEO_NAME=ai_demo_sample.mp4
5

Run the Pipeline

gst-launch-1.0 -e --gst-debug=2 \
filesrc location=$HOME/media/$SRC_VIDEO_NAME ! qtdemux ! h264parse ! \
v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! \
tee name=t \
t. ! queue ! qtivcomposer name=mixer sink_0::position="<0, 0>" sink_0::dimensions="<960, 1080>" sink_1::position="<960, 0>" sink_1::dimensions="<960, 1080>" ! queue ! waylandsink fullscreen=true sync=true \
t. ! qtimlvconverter ! queue ! \
qtimltflite model=$HOME/models/$MODEL_NAME delegate=gpu ! queue ! \
qtimlpostprocess module=srnet ! video/x-raw,format=RGB ! queue ! mixer.
1

Download Required Files

FileSave as
Modelquicksrnetlarge_w8a8.tflite
Input videoai_demo_sample.mp4
If any downloaded file is a .zip archive, extract it on your host machine before copying: unzip filename.zip
2

Copy Files to Device

# Replace $HOME to the appropriate device path before running the commands.
# For QLI:    /root
# For Ubuntu: /home/ubuntu
# Modify this based on your platform and ensure files are copied to the correct location on the device.

ssh <user>@<device-ip> "mkdir -p $HOME/{models,media,media/output}"
scp quicksrnetlarge_w8a8.tflite      <user>@<device-ip>:$HOME/models/
scp ai_demo_sample.mp4  <user>@<device-ip>:$HOME/media/
3

Connect to device

# Run from your host machine — replace <user> and <device-ip>
ssh <user>@<device-ip>
4

Set Environment Variables

Qualcomm Linux
export MODEL_NAME=quicksrnetlarge_w8a8.tflite
export SRC_VIDEO_NAME=ai_demo_sample.mp4
5

Run the Pipeline

gst-launch-1.0 -e --gst-debug=2 \
filesrc location=$HOME/media/$SRC_VIDEO_NAME ! qtdemux ! h264parse ! \
v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! \
tee name=t \
t. ! queue ! qtivcomposer name=mixer sink_0::position="<0, 0>" sink_0::dimensions="<960, 1080>" sink_1::position="<960, 0>" sink_1::dimensions="<960, 1080>" ! queue ! waylandsink fullscreen=true sync=true \
t. ! qtimlvconverter ! queue ! \
qtimltflite model=$HOME/models/$MODEL_NAME delegate=external external-delegate-path=libQnnTFLiteDelegate.so external-delegate-options="QNNExternalDelegate,backend_type=htp,log_level=(string)1;" ! queue ! \
qtimlpostprocess module=srnet ! video/x-raw,format=RGB ! queue ! mixer.
2QuickSRNetMediumFast super-resolution network (medium) balanced speed/quality.
1

Download Required Files

FileSave as
Modelquicksrnetmedium_float.tflite
Input videoai_demo_sample.mp4
If any downloaded file is a .zip archive, extract it on your host machine before copying: unzip filename.zip
2

Copy Files to Device

# Replace $HOME to the appropriate device path before running the commands.
# For QLI:    /root
# For Ubuntu: /home/ubuntu
# Modify this based on your platform and ensure files are copied to the correct location on the device.

ssh <user>@<device-ip> "mkdir -p $HOME/{models,media,media/output}"
scp quicksrnetmedium_float.tflite    <user>@<device-ip>:$HOME/models/
scp ai_demo_sample.mp4  <user>@<device-ip>:$HOME/media/
3

Connect to device

# Run from your host machine — replace <user> and <device-ip>
ssh <user>@<device-ip>
4

Set Environment Variables

Qualcomm Linux
export MODEL_NAME=quicksrnetmedium_float.tflite
export SRC_VIDEO_NAME=ai_demo_sample.mp4
5

Run the Pipeline

gst-launch-1.0 -e --gst-debug=2 \
filesrc location=$HOME/media/$SRC_VIDEO_NAME ! qtdemux ! h264parse ! \
v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! \
tee name=t \
t. ! queue ! qtivcomposer name=mixer sink_0::position="<0, 0>" sink_0::dimensions="<960, 1080>" sink_1::position="<960, 0>" sink_1::dimensions="<960, 1080>" ! queue ! waylandsink fullscreen=true sync=true \
t. ! qtimlvconverter ! queue ! \
qtimltflite model=$HOME/models/$MODEL_NAME delegate=gpu ! queue ! \
qtimlpostprocess module=srnet ! video/x-raw,format=RGB ! queue ! mixer.
1

Download Required Files

FileSave as
Modelquicksrnetmedium_w8a8.tflite
Input videoai_demo_sample.mp4
If any downloaded file is a .zip archive, extract it on your host machine before copying: unzip filename.zip
2

Copy Files to Device

# Replace $HOME to the appropriate device path before running the commands.
# For QLI:    /root
# For Ubuntu: /home/ubuntu
# Modify this based on your platform and ensure files are copied to the correct location on the device.

ssh <user>@<device-ip> "mkdir -p $HOME/{models,media,media/output}"
scp quicksrnetmedium_w8a8.tflite     <user>@<device-ip>:$HOME/models/
scp ai_demo_sample.mp4  <user>@<device-ip>:$HOME/media/
3

Connect to device

# Run from your host machine — replace <user> and <device-ip>
ssh <user>@<device-ip>
4

Set Environment Variables

Qualcomm Linux
export MODEL_NAME=quicksrnetmedium_w8a8.tflite
export SRC_VIDEO_NAME=ai_demo_sample.mp4
5

Run the Pipeline

gst-launch-1.0 -e --gst-debug=2 \
filesrc location=$HOME/media/$SRC_VIDEO_NAME ! qtdemux ! h264parse ! \
v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! \
tee name=t \
t. ! queue ! qtivcomposer name=mixer sink_0::position="<0, 0>" sink_0::dimensions="<960, 1080>" sink_1::position="<960, 0>" sink_1::dimensions="<960, 1080>" ! queue ! waylandsink fullscreen=true sync=true \
t. ! qtimlvconverter ! queue ! \
qtimltflite model=$HOME/models/$MODEL_NAME delegate=external external-delegate-path=libQnnTFLiteDelegate.so external-delegate-options="QNNExternalDelegate,backend_type=htp,log_level=(string)1;" ! queue ! \
qtimlpostprocess module=srnet ! video/x-raw,format=RGB ! queue ! mixer.
3QuickSRNetSmallLightweight super-resolution for real-time edge deployment.
1

Download Required Files

FileSave as
Modelquicksrnetsmall_float.tflite
Input videoai_demo_sample.mp4
If any downloaded file is a .zip archive, extract it on your host machine before copying: unzip filename.zip
2

Copy Files to Device

# Replace $HOME to the appropriate device path before running the commands.
# For QLI:    /root
# For Ubuntu: /home/ubuntu
# Modify this based on your platform and ensure files are copied to the correct location on the device.

ssh <user>@<device-ip> "mkdir -p $HOME/{models,media,media/output}"
scp quicksrnetsmall_float.tflite     <user>@<device-ip>:$HOME/models/
scp ai_demo_sample.mp4  <user>@<device-ip>:$HOME/media/
3

Connect to device

# Run from your host machine — replace <user> and <device-ip>
ssh <user>@<device-ip>
4

Set Environment Variables

Qualcomm Linux
export MODEL_NAME=quicksrnetsmall_float.tflite
export SRC_VIDEO_NAME=ai_demo_sample.mp4
5

Run the Pipeline

gst-launch-1.0 -e --gst-debug=2 \
filesrc location=$HOME/media/$SRC_VIDEO_NAME ! qtdemux ! h264parse ! \
v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! \
tee name=t \
t. ! queue ! qtivcomposer name=mixer sink_0::position="<0, 0>" sink_0::dimensions="<960, 1080>" sink_1::position="<960, 0>" sink_1::dimensions="<960, 1080>" ! queue ! waylandsink fullscreen=true sync=true \
t. ! qtimlvconverter ! queue ! \
qtimltflite model=$HOME/models/$MODEL_NAME delegate=gpu ! queue ! \
qtimlpostprocess module=srnet ! video/x-raw,format=RGB ! queue ! mixer.
1

Download Required Files

FileSave as
Modelquicksrnetsmall_w8a8.tflite
Input videoai_demo_sample.mp4
If any downloaded file is a .zip archive, extract it on your host machine before copying: unzip filename.zip
2

Copy Files to Device

# Replace $HOME to the appropriate device path before running the commands.
# For QLI:    /root
# For Ubuntu: /home/ubuntu
# Modify this based on your platform and ensure files are copied to the correct location on the device.

ssh <user>@<device-ip> "mkdir -p $HOME/{models,media,media/output}"
scp quicksrnetsmall_w8a8.tflite      <user>@<device-ip>:$HOME/models/
scp ai_demo_sample.mp4  <user>@<device-ip>:$HOME/media/
3

Connect to device

# Run from your host machine — replace <user> and <device-ip>
ssh <user>@<device-ip>
4

Set Environment Variables

Qualcomm Linux
export MODEL_NAME=quicksrnetsmall_w8a8.tflite
export SRC_VIDEO_NAME=ai_demo_sample.mp4
5

Run the Pipeline

gst-launch-1.0 -e --gst-debug=2 \
filesrc location=$HOME/media/$SRC_VIDEO_NAME ! qtdemux ! h264parse ! \
v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! \
tee name=t \
t. ! queue ! qtivcomposer name=mixer sink_0::position="<0, 0>" sink_0::dimensions="<960, 1080>" sink_1::position="<960, 0>" sink_1::dimensions="<960, 1080>" ! queue ! waylandsink fullscreen=true sync=true \
t. ! qtimlvconverter ! queue ! \
qtimltflite model=$HOME/models/$MODEL_NAME delegate=external external-delegate-path=libQnnTFLiteDelegate.so external-delegate-options="QNNExternalDelegate,backend_type=htp,log_level=(string)1;" ! queue ! \
qtimlpostprocess module=srnet ! video/x-raw,format=RGB ! queue ! mixer.
4XLSRExtreme lightweight super-resolution for mobile devices.
1

Download Required Files

FileSave as
Modelxlsr_float.tflite
Input videoai_demo_sample.mp4
If any downloaded file is a .zip archive, extract it on your host machine before copying: unzip filename.zip
2

Copy Files to Device

# Replace $HOME to the appropriate device path before running the commands.
# For QLI:    /root
# For Ubuntu: /home/ubuntu
# Modify this based on your platform and ensure files are copied to the correct location on the device.

ssh <user>@<device-ip> "mkdir -p $HOME/{models,media,media/output}"
scp xlsr_float.tflite                <user>@<device-ip>:$HOME/models/
scp ai_demo_sample.mp4  <user>@<device-ip>:$HOME/media/
3

Connect to device

# Run from your host machine — replace <user> and <device-ip>
ssh <user>@<device-ip>
4

Set Environment Variables

Qualcomm Linux
export MODEL_NAME=xlsr_float.tflite
export SRC_VIDEO_NAME=ai_demo_sample.mp4
5

Run the Pipeline

gst-launch-1.0 -e --gst-debug=2 \
filesrc location=$HOME/media/$SRC_VIDEO_NAME ! qtdemux ! h264parse ! \
v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! \
tee name=t \
t. ! queue ! qtivcomposer name=mixer sink_0::position="<0, 0>" sink_0::dimensions="<960, 1080>" sink_1::position="<960, 0>" sink_1::dimensions="<960, 1080>" ! queue ! waylandsink fullscreen=true sync=true \
t. ! qtimlvconverter ! queue ! \
qtimltflite model=$HOME/models/$MODEL_NAME delegate=gpu ! queue ! \
qtimlpostprocess module=srnet ! video/x-raw,format=RGB ! queue ! mixer.
1

Download Required Files

FileSave as
Modelxlsr_w8a8.tflite
Input videoai_demo_sample.mp4
If any downloaded file is a .zip archive, extract it on your host machine before copying: unzip filename.zip
2

Copy Files to Device

# Replace $HOME to the appropriate device path before running the commands.
# For QLI:    /root
# For Ubuntu: /home/ubuntu
# Modify this based on your platform and ensure files are copied to the correct location on the device.

ssh <user>@<device-ip> "mkdir -p $HOME/{models,media,media/output}"
scp xlsr_w8a8.tflite                 <user>@<device-ip>:$HOME/models/
scp ai_demo_sample.mp4  <user>@<device-ip>:$HOME/media/
3

Connect to device

# Run from your host machine — replace <user> and <device-ip>
ssh <user>@<device-ip>
4

Set Environment Variables

Qualcomm Linux
export MODEL_NAME=xlsr_w8a8.tflite
export SRC_VIDEO_NAME=ai_demo_sample.mp4
5

Run the Pipeline

gst-launch-1.0 -e --gst-debug=2 \
filesrc location=$HOME/media/$SRC_VIDEO_NAME ! qtdemux ! h264parse ! \
v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! \
tee name=t \
t. ! queue ! qtivcomposer name=mixer sink_0::position="<0, 0>" sink_0::dimensions="<960, 1080>" sink_1::position="<960, 0>" sink_1::dimensions="<960, 1080>" ! queue ! waylandsink fullscreen=true sync=true \
t. ! qtimlvconverter ! queue ! \
qtimltflite model=$HOME/models/$MODEL_NAME delegate=external external-delegate-path=libQnnTFLiteDelegate.so external-delegate-options="QNNExternalDelegate,backend_type=htp,log_level=(string)1;" ! queue ! \
qtimlpostprocess module=srnet ! video/x-raw,format=RGB ! queue ! mixer.
5SESR-M5Single-image efficient super-resolution, 5-block variant.
1

Download Required Files

FileSave as
Modelsesr_m5_float.tflite
Input videoai_demo_sample.mp4
If any downloaded file is a .zip archive, extract it on your host machine before copying: unzip filename.zip
2

Copy Files to Device

# Replace $HOME to the appropriate device path before running the commands.
# For QLI:    /root
# For Ubuntu: /home/ubuntu
# Modify this based on your platform and ensure files are copied to the correct location on the device.

ssh <user>@<device-ip> "mkdir -p $HOME/{models,media,media/output}"
scp sesr_m5_float.tflite             <user>@<device-ip>:$HOME/models/
scp ai_demo_sample.mp4  <user>@<device-ip>:$HOME/media/
3

Connect to device

# Run from your host machine — replace <user> and <device-ip>
ssh <user>@<device-ip>
4

Set Environment Variables

Qualcomm Linux
export MODEL_NAME=sesr_m5_float.tflite
export SRC_VIDEO_NAME=ai_demo_sample.mp4
5

Run the Pipeline

gst-launch-1.0 -e --gst-debug=2 \
filesrc location=$HOME/media/$SRC_VIDEO_NAME ! qtdemux ! h264parse ! \
v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! \
tee name=t \
t. ! queue ! qtivcomposer name=mixer sink_0::position="<0, 0>" sink_0::dimensions="<960, 1080>" sink_1::position="<960, 0>" sink_1::dimensions="<960, 1080>" ! queue ! waylandsink fullscreen=true sync=true \
t. ! qtimlvconverter ! queue ! \
qtimltflite model=$HOME/models/$MODEL_NAME delegate=gpu ! queue ! \
qtimlpostprocess module=srnet ! video/x-raw,format=RGB ! queue ! mixer.
1

Download Required Files

FileSave as
Modelsesr_m5_w8a8.tflite
Input videoai_demo_sample.mp4
If any downloaded file is a .zip archive, extract it on your host machine before copying: unzip filename.zip
2

Copy Files to Device

# Replace $HOME to the appropriate device path before running the commands.
# For QLI:    /root
# For Ubuntu: /home/ubuntu
# Modify this based on your platform and ensure files are copied to the correct location on the device.

ssh <user>@<device-ip> "mkdir -p $HOME/{models,media,media/output}"
scp sesr_m5_w8a8.tflite              <user>@<device-ip>:$HOME/models/
scp ai_demo_sample.mp4  <user>@<device-ip>:$HOME/media/
3

Connect to device

# Run from your host machine — replace <user> and <device-ip>
ssh <user>@<device-ip>
4

Set Environment Variables

Qualcomm Linux
export MODEL_NAME=sesr_m5_w8a8.tflite
export SRC_VIDEO_NAME=ai_demo_sample.mp4
5

Run the Pipeline

gst-launch-1.0 -e --gst-debug=2 \
filesrc location=$HOME/media/$SRC_VIDEO_NAME ! qtdemux ! h264parse ! \
v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! \
tee name=t \
t. ! queue ! qtivcomposer name=mixer sink_0::position="<0, 0>" sink_0::dimensions="<960, 1080>" sink_1::position="<960, 0>" sink_1::dimensions="<960, 1080>" ! queue ! waylandsink fullscreen=true sync=true \
t. ! qtimlvconverter ! queue ! \
qtimltflite model=$HOME/models/$MODEL_NAME delegate=external external-delegate-path=libQnnTFLiteDelegate.so external-delegate-options="QNNExternalDelegate,backend_type=htp,log_level=(string)1;" ! queue ! \
qtimlpostprocess module=srnet ! video/x-raw,format=RGB ! queue ! mixer.
6Real-ESRGAN-General-x4v3General-purpose 4x upscaling with enhanced ESRGAN training.
1

Download Required Files

FileSave as
Modelreal_esrgan_general_x4v3_w8a8.tflite
Input videoai_demo_sample.mp4
If any downloaded file is a .zip archive, extract it on your host machine before copying: unzip filename.zip
2

Copy Files to Device

# Replace $HOME to the appropriate device path before running the commands.
# For QLI:    /root
# For Ubuntu: /home/ubuntu
# Modify this based on your platform and ensure files are copied to the correct location on the device.

ssh <user>@<device-ip> "mkdir -p $HOME/{models,media,media/output}"
scp real_esrgan_general_x4v3_w8a8.tflite  <user>@<device-ip>:$HOME/models/
scp ai_demo_sample.mp4       <user>@<device-ip>:$HOME/media/
3

Connect to device

# Run from your host machine — replace <user> and <device-ip>
ssh <user>@<device-ip>
4

Set Environment Variables

Qualcomm Linux
export MODEL_NAME=real_esrgan_general_x4v3_w8a8.tflite
export SRC_VIDEO_NAME=ai_demo_sample.mp4
5

Run the Pipeline

gst-launch-1.0 -e --gst-debug=2 \
filesrc location=$HOME/media/$SRC_VIDEO_NAME ! qtdemux ! h264parse ! \
v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! \
tee name=t \
t. ! queue ! qtivcomposer name=mixer sink_0::position="<0, 0>" sink_0::dimensions="<960, 1080>" sink_1::position="<960, 0>" sink_1::dimensions="<960, 1080>" ! queue ! waylandsink fullscreen=true sync=true \
t. ! qtimlvconverter ! queue ! \
qtimltflite model=$HOME/models/$MODEL_NAME delegate=external external-delegate-path=libQnnTFLiteDelegate.so external-delegate-options="QNNExternalDelegate,backend_type=htp,log_level=(string)1;" ! queue ! \
qtimlpostprocess module=srnet ! video/x-raw,format=RGB ! queue ! mixer.
1

Download Required Files

FileSave as
Modelreal_esrgan_general_x4v3_float.tflite
Input videoai_demo_sample.mp4
If any downloaded file is a .zip archive, extract it on your host machine before copying: unzip filename.zip
2

Copy Files to Device

# Replace $HOME to the appropriate device path before running the commands.
# For QLI:    /root
# For Ubuntu: /home/ubuntu
# Modify this based on your platform and ensure files are copied to the correct location on the device.

ssh <user>@<device-ip> "mkdir -p $HOME/{models,media,media/output}"
scp real_esrgan_general_x4v3_float.tflite  <user>@<device-ip>:$HOME/models/
scp ai_demo_sample.mp4        <user>@<device-ip>:$HOME/media/
3

Connect to device

# Run from your host machine — replace <user> and <device-ip>
ssh <user>@<device-ip>
4

Set Environment Variables

Qualcomm Linux
export MODEL_NAME=real_esrgan_general_x4v3_float.tflite
export SRC_VIDEO_NAME=ai_demo_sample.mp4
5

Run the Pipeline

gst-launch-1.0 -e --gst-debug=2 \
filesrc location=$HOME/media/$SRC_VIDEO_NAME ! qtdemux ! h264parse ! \
v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! \
tee name=t \
t. ! queue ! qtivcomposer name=mixer sink_0::position="<0, 0>" sink_0::dimensions="<960, 1080>" sink_1::position="<960, 0>" sink_1::dimensions="<960, 1080>" ! queue ! waylandsink fullscreen=true sync=true \
t. ! qtimlvconverter ! queue ! \
qtimltflite model=$HOME/models/$MODEL_NAME delegate=gpu ! queue ! \
qtimlpostprocess module=srnet ! video/x-raw,format=RGB ! queue ! mixer.
7Real-ESRGAN-x4plusPhoto-realistic 4x super-resolution for natural images.
1

Download Required Files

FileSave as
Modelreal_esrgan_x4plus_w8a8.tflite
Input videoai_demo_sample.mp4
If any downloaded file is a .zip archive, extract it on your host machine before copying: unzip filename.zip
2

Copy Files to Device

# Replace $HOME to the appropriate device path before running the commands.
# For QLI:    /root
# For Ubuntu: /home/ubuntu
# Modify this based on your platform and ensure files are copied to the correct location on the device.

ssh <user>@<device-ip> "mkdir -p $HOME/{models,media,media/output}"
scp real_esrgan_x4plus_w8a8.tflite   <user>@<device-ip>:$HOME/models/
scp ai_demo_sample.mp4  <user>@<device-ip>:$HOME/media/
3

Connect to device

# Run from your host machine — replace <user> and <device-ip>
ssh <user>@<device-ip>
4

Set Environment Variables

Qualcomm Linux
export MODEL_NAME=real_esrgan_x4plus_w8a8.tflite
export SRC_VIDEO_NAME=ai_demo_sample.mp4
5

Run the Pipeline

gst-launch-1.0 -e --gst-debug=2 \
filesrc location=$HOME/media/$SRC_VIDEO_NAME ! qtdemux ! h264parse ! \
v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! \
tee name=t \
t. ! queue ! qtivcomposer name=mixer sink_0::position="<0, 0>" sink_0::dimensions="<960, 1080>" sink_1::position="<960, 0>" sink_1::dimensions="<960, 1080>" ! queue ! waylandsink fullscreen=true sync=true \
t. ! qtimlvconverter ! queue ! \
qtimltflite model=$HOME/models/$MODEL_NAME delegate=external external-delegate-path=libQnnTFLiteDelegate.so external-delegate-options="QNNExternalDelegate,backend_type=htp,log_level=(string)1;" ! queue ! \
qtimlpostprocess module=srnet ! video/x-raw,format=RGB ! queue ! mixer.
1

Download Required Files

FileSave as
Modelreal_esrgan_x4plus_float.tflite
Input videoai_demo_sample.mp4
If any downloaded file is a .zip archive, extract it on your host machine before copying: unzip filename.zip
2

Copy Files to Device

# Replace $HOME to the appropriate device path before running the commands.
# For QLI:    /root
# For Ubuntu: /home/ubuntu
# Modify this based on your platform and ensure files are copied to the correct location on the device.

ssh <user>@<device-ip> "mkdir -p $HOME/{models,media,media/output}"
scp real_esrgan_x4plus_float.tflite  <user>@<device-ip>:$HOME/models/
scp ai_demo_sample.mp4  <user>@<device-ip>:$HOME/media/
3

Connect to device

# Run from your host machine — replace <user> and <device-ip>
ssh <user>@<device-ip>
4

Set Environment Variables

Qualcomm Linux
export MODEL_NAME=real_esrgan_x4plus_float.tflite
export SRC_VIDEO_NAME=ai_demo_sample.mp4
5

Run the Pipeline

gst-launch-1.0 -e --gst-debug=2 \
filesrc location=$HOME/media/$SRC_VIDEO_NAME ! qtdemux ! h264parse ! \
v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! \
tee name=t \
t. ! queue ! qtivcomposer name=mixer sink_0::position="<0, 0>" sink_0::dimensions="<960, 1080>" sink_1::position="<960, 0>" sink_1::dimensions="<960, 1080>" ! queue ! waylandsink fullscreen=true sync=true \
t. ! qtimlvconverter ! queue ! \
qtimltflite model=$HOME/models/$MODEL_NAME delegate=gpu ! queue ! \
qtimlpostprocess module=srnet ! video/x-raw,format=RGB ! queue ! mixer.
8ESRGANEnhanced super-resolution GAN for high-perceptual quality output.
1

Download Required Files

FileSave as
Modelesrgan_float.tflite
Input videoai_demo_sample.mp4
If any downloaded file is a .zip archive, extract it on your host machine before copying: unzip filename.zip
2

Copy Files to Device

# Replace $HOME to the appropriate device path before running the commands.
# For QLI:    /root
# For Ubuntu: /home/ubuntu
# Modify this based on your platform and ensure files are copied to the correct location on the device.

ssh <user>@<device-ip> "mkdir -p $HOME/{models,media,media/output}"
scp esrgan_float.tflite              <user>@<device-ip>:$HOME/models/
scp ai_demo_sample.mp4  <user>@<device-ip>:$HOME/media/
3

Connect to device

# Run from your host machine — replace <user> and <device-ip>
ssh <user>@<device-ip>
4

Set Environment Variables

Qualcomm Linux
export MODEL_NAME=esrgan_float.tflite
export SRC_VIDEO_NAME=ai_demo_sample.mp4
5

Run the Pipeline

gst-launch-1.0 -e --gst-debug=2 \
filesrc location=$HOME/media/$SRC_VIDEO_NAME ! qtdemux ! h264parse ! \
v4l2h264dec capture-io-mode=4 output-io-mode=4 ! video/x-raw,format=NV12 ! queue ! \
tee name=t \
t. ! queue ! qtivcomposer name=mixer sink_0::position="<0, 0>" sink_0::dimensions="<960, 1080>" sink_1::position="<960, 0>" sink_1::dimensions="<960, 1080>" ! queue ! waylandsink fullscreen=true sync=true \
t. ! qtimlvconverter ! queue ! \
qtimltflite model=$HOME/models/$MODEL_NAME delegate=gpu ! queue ! \
qtimlpostprocess module=srnet ! video/x-raw,format=RGB ! queue ! mixer.