# Run HTTP use cases

Source: [https://docs.qualcomm.com/doc/80-70020-50/topic/run-http-use-cases.html](https://docs.qualcomm.com/doc/80-70020-50/topic/run-http-use-cases.html)

Control the GStD framework using a control application that's remotely interfacing
        through HTTP.

## Prerequisites

- Enable `wlan0`. For instructions, see [Sign in using SSH](https://docs.qualcomm.com/bundle/publicresource/topics/80-70020-254/how_to.html#use-ssh).
- After the system restart, the Wi-Fi should be up and running.

        ifconfig   // Note down wlan0_IPCopy to clipboard
- To configure HTTP use cases, select an unused
                    port:

        vi /etc/default/gstd
             OPTARGS=" --enable-http-protocol --http-address=<wlan0_IP_address> --http-port=5002"       // Replace the port 5002 if the port is not free; For <wlan0_IP_address>, enter your device WLAN IP address
        
             XDG_RUNTIME_DIR=/dev/socket/weston
        
             WAYLAND_DISPLAY=wayland-1
        
        systemctl daemon-reload
        systemctl restart gstdCopy to clipboard
- Download [Postman](https://www.postman.com/downloads/) to run the HTTP use cases.

##  Single stream encode

1. Create the
                    pipeline–POST:

        http://<wlan0_IP_address>:5002/pipelines?name=pipeline_http_enc1&description=qtiqmmfsrc name=camsrc ! video,format=NV12,width=1920,height=1080,framerate=30/1,interlace-mode=progressive,colorimetry=bt601 ! v4l2h264enc capture-io-mode=4 output-io-mode=5 ! h264parse ! queue ! mp4mux ! queue ! filesink location=/tmp/http_enc1.mp4Copy to clipboard
2. Control the pipeline:
    - Play the
                            pipeline–PUT:

            http://<wlan0_IP_address>:5002/pipelines/pipeline_http_enc1/state?name=playingCopy to clipboard
    - Send
                            EOS–POST:

            http://<wlan0_IP_address>:5002/pipelines/pipeline_http_enc1/event?name=eosCopy to clipboard
    - Stop the
                            pipeline–PUT:

            http://<wlan0_IP_address>:5002/pipelines/pipeline_http_enc1/state?name=nullCopy to clipboard

## Multistream encode

1. Create the
                    pipeline–POST

        http://<wlan0_IP_address>:5002/pipelines?name=pipeline_http_enc2&description=qtiqmmfsrc name=camsrc video_0::type=preview ! video/x-raw,format=NV12,width=1920,height=1080,framerate=30/1,interlace-mode=progressive,colorimetry=bt601 ! queue ! v4l2h264enc capture-io-mode=4 output-io-mode=5 ! queue ! h264parse ! mp4mux ! queue ! filesink location=/tmp/http_mux1.mp4 camsrc. ! video/x-raw,format=NV12,width=1920,height=1080,framerate=30/1,interlace-mode=progressive,colorimetry=bt601 ! queue ! v4l2h264enc capture-io-mode=4 output-io-mode=5 ! queue ! h264parse ! mp4mux ! queue ! filesink location=/tmp/http_mux2.mp4Copy to clipboard
2. Control pipeline:
    - Play the
                            pipeline–PUT:

            http://<wlan0_IP_address>:5002/pipelines/pipeline_http_enc2/state?name=playingCopy to clipboard
    - Send
                            EOS–POST:

            http://<wlan0_IP_address>:5002/pipelines/pipeline_http_enc2/event?name=eosCopy to clipboard
    - Stop the
                            pipeline–PUT:

            http://<wlan0_IP_address>:5002/pipelines/pipeline_http_enc2/state?name=nullCopy to clipboard

## Single display

1. Create the
                    pipeline–POST:

        http://<wlan0_IP_address>:5002/pipelines?name=pipeline_http_dis1&description=qtiqmmfsrc name=camsrc video_0::type=preview ! video/x-raw,format=NV12,width=1920,height=1080,framerate=30/1 ! waylandsink fullscreen=true async=true sync=falseCopy to clipboard
2. Control the pipeline:
    - Play the pipeline–PUT:

            http://<wlan0_IP_address>:5002/pipelines/pipeline_http_dis1/state?name=playingCopy to clipboard
    - Send
                            EOS–POST:

            http://<wlan0_IP_address>:5002/pipelines/pipeline_http_dis1/event?name=eosCopy to clipboard
    - Stop the
                            pipeline–PUT:

            http://<wlan0_IP_address>:5002/pipelines/pipeline_http_dis1/state?name=nullCopy to clipboard

## Multi-display

1. Create the
                    pipeline–POST:

        http://<wlan0_IP_address>:5002/pipelines?name=pipeline_http_dis2&description=qtiqmmfsrc name=camsrc video_0::type=preview ! video/x-raw,format=NV12,width=1920,height=1080,framerate=30/1 ! waylandsink x=0 y=0 width=500 height=400 async=true sync=false camsrc. ! video/x-raw,format=NV12,width=1920,height=1080,framerate=30/1 ! waylandsink x=510 y=0 width=500 height=400 async=true sync=falseCopy to clipboard
2. Control the pipeline:
    - Play the
                                pipeline–PUT:

            http://<wlan0_IP_address>:5002/pipelines/pipeline_http_dis2/state?name=playingCopy to clipboard
    - Send
                            EOS–POST:

            http://<wlan0_IP_address>:5002/pipelines/pipeline_http_dis2/event?name=eosCopy to clipboard
    - Stop the
                            pipeline–PUT:

            http://<wlan0_IP_address>:5002/pipelines/pipeline_http_dis2/state?name=nullCopy to clipboard

**Parent Topic:** [GStD framework](https://docs.qualcomm.com/doc/80-70020-50/topic/gstreamer-daemon.html)

Last Published: Jan 30, 2026

[Previous Topic
Run TCP use cases](https://docs.qualcomm.com/bundle/publicresource/80-70020-50/topics/tcp-use-cases.md) [Next Topic
Enable message support through MQTT](https://docs.qualcomm.com/bundle/publicresource/80-70020-50/topics/mqtt-configuration.md)