# Publish metadata to RedisSink

Source: [https://docs.qualcomm.com/doc/80-70023-50/topic/publish-metadata-redissink.html](https://docs.qualcomm.com/doc/80-70023-50/topic/publish-metadata-redissink.html)

The use case extracts the ML metadata and sends it to the client through RedisSink.
        Redis stores this data allowing real-time analytics and dashboards to display up-to-date
        insights.

The steps to run the use case are as follows:
1. Set up RedisSink. Installing RedisSink is a one-time set up process.

        docker pull redis:7.2.4-alpineCopy to clipboard
2. Run the
                    Docker:

        docker run --name redis -p 6379:6379 --hostname redis -d redis:7.2.4-alpine redis-serverCopy to clipboard
3. Run the `redis-cli` and subscribe to
                    sample-redis-channel:

        docker exec -it redis redis-cliCopy to clipboard

        PSUBSCRIBE sample-redis-channelCopy to clipboard
4. Open a new command shell on the target device and run the following
                    command:

        export XDG_RUNTIME_DIR=/dev/socket/weston && export WAYLAND_DISPLAY=wayland-1Copy to clipboard

        gst-launch-1.0 -e \
        qtivcomposer name=vcomposer \
        sink_0::position="<0, 0>" sink_0::dimensions="<1280, 720>" ! waylandsink fullscreen=true \
        qtimlvconverter name=stage_01_preproc \
        qtimltflite name=stage_01_inference delegate=external external-delegate-path=libQnnTFLiteDelegate.so \
        external-delegate-options="QNNExternalDelegate,backend_type=htp;" model=/etc/models/yolov8_det_quantized.tflite \
        qtimlpostprocess name=stage_01_postproc1 settings="{\"confidence\": 50.0}" results=10 module=yolov8 labels=/etc/labels/yolov8.json \
        qtimlpostprocess name=stage_01_postproc2 settings="{\"confidence\": 50.0}" results=10 module=yolov8 labels=/etc/labels/yolov8.json \
        qtiqmmfsrc name=camsrc ! video/x-raw,format=NV12_Q08C,width=1280,height=720,framerate=30/1 ! queue ! tee name=t_split_1 \
        t_split_1. ! queue ! metamux_1. \
        t_split_1. ! queue ! stage_01_preproc. stage_01_preproc. ! queue ! stage_01_inference. stage_01_inference. ! queue ! \
        stage_01_postproc1. stage_01_postproc1. ! text/x-raw ! queue ! metamux_1. \
        qtimetamux name=metamux_1 ! queue ! qtivoverlay ! tee name=t_redis_1 \
        t_redis_1. ! queue ! vcomposer. \
        t_redis_1. ! qtimlmetaparser module=json ! queue ! qtiredissink sync=false async=false channel="sample-redis-channel" host="127.0.0.1" port=6379Copy to clipboard

To stop the use case, use CTRL + C.

The following figure demonstrates AI processing and object detection on camera source.
            The processed result and input stream displays on Wayland and delivers the metadata to
            Redis channel simultaneously.

Figure : Pipeline for publish metadata to RedisSink
                
                <?xml version="1.0" encoding="UTF-8"?>
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" width="1220" height="286.299072265625" viewbox="0 0 1220 286.299072265625">
  <defs>
    <style>.svg-1 .cls-1 { fill: none; stroke: #000; stroke-miterlimit: 10 }
.svg-1 .cls-2 { fill: #fff; font-size: 16px }
.svg-1 .cls-2,.svg-1 .cls-3 { font-family: Roboto-Regular, Roboto }
.svg-1 .cls-4 { fill: #007884 }
.svg-1 .cls-5 { fill: #d2d7e1 }
.svg-1 .cls-6 { fill: #2a2aea }
.svg-1 .cls-3 { font-size: 14px }
.svg-1 .cls-7 { fill: #fafafa }</style>
  </defs>
  <g>
    <rect class="cls-7" x=".5" y=".50006103515625" width="1219.00048828125" height="285.29931640625" rx="7.500000000000001" ry="7.500000000000001"></rect>
    <path class="cls-5" d="M1212,1c3.85986328125,0,7,3.14013671875,7,7v270.299072265625c0,3.85986328125-3.14013671875,7-7,7H8c-3.859848022460938,0-7-3.14013671875-7-7V8c0-3.85986328125,3.140151977539062-7,7-7h1204M1212,0H8C3.58184814453125,0,0,3.58184814453125,0,8v270.299072265625c0,4.418304443359375,3.58184814453125,8,8,8h1204c4.418334960939319,0,8-3.581695556640625,8-8V8c0-4.41815185546875-3.581665039060681-8-8-8h0Z"></path>
  </g>
  <g>
    <g>
      <text class="cls-3" transform="translate(1016.355926513671875 266.22833251953125)"><tspan x="0" y="0">Qualcomm </tspan></text>
      <rect class="cls-6" x="996.104919281953698" y="253.136849536032969" width="15.999999999999886" height="16" rx="1.999999999999986" ry="1.999999999999986"></rect>
    </g>
    <g>
      <text class="cls-3" transform="translate(1114.937713623046875 266.22833251953125)"><tspan x="0" y="0">Open source</tspan></text>
      <rect class="cls-4" x="1094.686700694806859" y="253.136849536032969" width="16.000000000003638" height="16" rx="2" ry="2"></rect>
    </g>
  </g>
  <rect class="cls-4" x="518.169285576583206" y="38.251229713136127" width="100" height="50" rx="4" ry="4"></rect>
  <g>
    <line class="cls-1" x1="618.1693115234375" y1="63.251220703125" x2="641.31304931640625" y2="63.251220703125"></line>
    <polygon points="640.1458740234375 67.24029541015625 647.05401611328125 63.251220703125 640.1458740234375 59.26214599609375 640.1458740234375 67.24029541015625"></polygon>
  </g>
  <text class="cls-2" transform="translate(557.079483032226562 67.83355712890625)"><tspan x="0" y="0">tee</tspan></text>
  <rect class="cls-4" x="647.972579718789348" y="35.492948579802032" width="140" height="124.393658170585695" rx="4" ry="4"></rect>
  <text class="cls-2" transform="translate(675.269317626953125 102.365478515625)"><tspan x="0" y="0">qtimetamux</tspan></text>
  <rect class="cls-4" x="810.832340652123094" y="35.492948579802032" width="100" height="55.516562266668188" rx="4" ry="4"></rect>
  <text class="cls-2" transform="translate(849.7425537109375 67.83355712890625)"><tspan x="0" y="0">tee</tspan></text>
  <g>
    <line class="cls-1" x1="787.97259521484375" y1="63.251220703125" x2="805.09136962890625" y2="63.251220703125"></line>
    <polygon points="803.9241943359375 67.24029541015625 810.83233642578125 63.251220703125 803.9241943359375 59.26214599609375 803.9241943359375 67.24029541015625"></polygon>
  </g>
  <rect class="cls-6" x="933.69210158545684" y="35.492948579802032" width="137.158565599998838" height="55.516562266668188" rx="4" ry="4"></rect>
  <text class="cls-2" transform="translate(943.38470458984375 67.83355712890625)"><tspan x="0" y="0">qtimlmetaparser</tspan></text>
  <g>
    <line class="cls-1" x1="910.83233642578125" y1="63.251220703125" x2="927.95111083984375" y2="63.251220703125"></line>
    <polygon points="926.783935546875 67.24029541015625 933.69207763671875 63.251220703125 926.783935546875 59.26214599609375 926.783935546875 67.24029541015625"></polygon>
  </g>
  <rect class="cls-4" x="1093.42822265625" y="35.492948579802032" width="100" height="55.516562266668188" rx="4" ry="4"></rect>
  <text class="cls-2" transform="translate(1111.36962890625 67.83355712890625)"><tspan x="0" y="0">redissink</tspan></text>
  <g>
    <line class="cls-1" x1="1070.85064697265625" y1="63.251220703125" x2="1087.96942138671875" y2="63.251220703125"></line>
    <polygon points="1086.80224609375 67.24029541015625 1093.71044921875 63.251220703125 1086.80224609375 59.26214599609375 1086.80224609375 67.24029541015625"></polygon>
  </g>
  <rect class="cls-6" x="26.572858591533986" y="150.479282374746617" width="137.158565600000657" height="55.516594923468801" rx="4" ry="4"></rect>
  <text class="cls-2" transform="translate(39.679924011230469 182.819042205810547)"><tspan x="0" y="0">qtimlvconverter</tspan></text>
  <rect class="cls-4" x="346.609511658200972" y="150.479298703146924" width="100" height="55.516562266668217" rx="4.000000000000004" ry="4.000000000000004"></rect>
  <rect class="cls-6" x="186.591185124868389" y="150.479298703146924" width="137.158565599998838" height="55.516562266668188" rx="4" ry="4"></rect>
  <g>
    <line class="cls-1" x1="323.749755859375" y1="178.237579345703125" x2="340.868530273438409" y2="178.237579345703125"></line>
    <polygon points="339.701339721679688 182.226654052734375 346.609512329101562 178.237579345703125 339.701339721679688 174.248504638671875 339.701339721679688 182.226654052734375"></polygon>
  </g>
  <text class="cls-2" transform="translate(385.519783020019531 183.593456268310547)"><tspan x="0" y="0">tee</tspan></text>
  <g>
    <polyline class="cls-1" points="446.609497070313409 168.984832763671875 456.197998046875 168.984832763671875 456.197998046875 145.158416748046875 467.294708251953125 145.158416748046875"></polyline>
    <polygon points="466.127532958984375 149.1474609375 473.03570556640625 145.158416748046875 466.127532958984375 141.169342041015625 466.127532958984375 149.1474609375"></polygon>
  </g>
  <g>
    <polyline class="cls-1" points="446.609497070313409 187.490325927734375 456.197998046875 187.490325927734375 456.197998046875 210.259460449217841 467.294708251953125 210.259460449217841"></polyline>
    <polygon points="466.127532958984375 214.248504638671875 473.03570556640625 210.259460449217841 466.127532958984375 206.2703857421875 466.127532958984375 214.248504638671875"></polygon>
  </g>
  <rect class="cls-6" x="473.035693986522347" y="117.942944260117656" width="151.158565599999747" height="55.516562266668188" rx="4" ry="4"></rect>
  <text class="cls-2" transform="translate(486.33782958984375 150.376786947250366)"><tspan x="0" y="0">qtimlpostprocess</tspan></text>
  <rect class="cls-6" x="473.035693986522347" y="183.015653146175282" width="151.158565599999747" height="55.516562266669098" rx="4" ry="4"></rect>
  <text class="cls-2" transform="translate(486.33782958984375 215.449935913085938)"><tspan x="0" y="0">qtimlpostprocess</tspan></text>
  <rect class="cls-6" x="647.972579718789348" y="183.015653146175282" width="140" height="55.516562266669098" rx="4" ry="4"></rect>
  <text class="cls-2" transform="translate(669.113182067871094 216.129806518554688)"><tspan x="0" y="0">qtivcomposer</tspan></text>
  <g>
    <line class="cls-1" x1="624.19427490234375" y1="145.70123291015625" x2="642.2315673828125" y2="145.70123291015625"></line>
    <polygon points="641.06439208984375 149.690277099609375 647.97259521484375 145.70123291015625 641.06439208984375 141.712158203125 641.06439208984375 149.690277099609375"></polygon>
  </g>
  <g>
    <line class="cls-1" x1="624.19427490234375" y1="210.77392578125" x2="642.2315673828125" y2="210.77392578125"></line>
    <polygon points="641.06439208984375 214.76300048828125 647.97259521484375 210.77392578125 641.06439208984375 206.784881591796875 641.06439208984375 214.76300048828125"></polygon>
  </g>
  <rect class="cls-4" x="811.750082489648776" y="183.015653146175282" width="140" height="55.516562266669098" rx="4" ry="4"></rect>
  <text class="cls-2" transform="translate(837.84771728515625 216.129806518554688)"><tspan x="0" y="0">waylandsink</tspan></text>
  <g>
    <line class="cls-1" x1="787.97174072265625" y1="210.77392578125" x2="806.00909423828125" y2="210.77392578125"></line>
    <polygon points="804.8419189453125 214.76300048828125 811.75006103515625 210.77392578125 804.8419189453125 206.784881591796875 804.8419189453125 214.76300048828125"></polygon>
  </g>
  <text class="cls-2" transform="translate(219.850204467773438 182.819042205810547)"><tspan x="0" y="0">qtimlsnpe</tspan></text>
  <g>
    <line class="cls-1" x1="163.731422424316406" y1="178.237579345703125" x2="180.850204467773438" y2="178.237579345703125"></line>
    <polygon points="179.683006286621094 182.226654052734375 186.5911865234375 178.237579345703125 179.683006286621094 174.248504638671875 179.683006286621094 182.226654052734375"></polygon>
  </g>
  <g>
    <polyline class="cls-1" points="95.152141332626343 144.738311767578125 95.152141332626343 104.365234375 568.169311523438409 104.365234375 568.169311523438409 88.251220703125"></polyline>
    <polygon points="99.141205430030823 143.571136474609375 95.152141332626343 150.47930908203125 91.163077354431152 143.571136474609375 99.141205430030823 143.571136474609375"></polygon>
  </g>
  <g>
    <polyline class="cls-1" points="863.326416015625 91.009521484375 863.326416015625 168.7813720703125 717.97216796875 168.7813720703125 717.97216796875 177.274658203125"></polyline>
    <polygon points="713.98309326171875 176.10748291015625 717.97216796875 183.015655517578125 721.96124267578125 176.10748291015625 713.98309326171875 176.10748291015625"></polygon>
  </g>
  <rect class="cls-4" x="22.761141357361339" y="38.251229713136127" width="80" height="50" rx="4.000000000000001" ry="4.000000000000001"></rect>
  <text class="cls-2" transform="translate(40.84320068359375 67.927017211914062)"><tspan x="0" y="0">filesrc</tspan></text>
  <g>
    <line class="cls-1" x1="102.761141300201416" y1="63.251220703125" x2="122.020156860351562" y2="63.251220703125"></line>
    <polygon points="120.85296630859375 67.24029541015625 127.761140823364258 63.251220703125 120.85296630859375 59.26214599609375 120.85296630859375 67.24029541015625"></polygon>
  </g>
  <rect class="cls-4" x="127.761141357361339" y="38.251229713136127" width="100" height="50" rx="4" ry="4"></rect>
  <text class="cls-2" transform="translate(146.46429443359375 67.927017211914062)"><tspan x="0" y="0">qtdemux</tspan></text>
  <g>
    <line class="cls-1" x1="227.761142168939841" y1="63.251220703125" x2="247.020152483881247" y2="63.251220703125"></line>
    <polygon points="245.852961932123435 67.24029541015625 252.76113453954531 63.251220703125 245.852961932123435 59.26214599609375 245.852961932123435 67.24029541015625"></polygon>
  </g>
  <g>
    <line class="cls-1" x1="349.563854217529297" y1="63.251220703125" x2="368.822868347167969" y2="63.251220703125"></line>
    <polygon points="367.655677795410156 67.24029541015625 374.563858032226562 63.251220703125 367.655677795410156 59.26214599609375 367.655677795410156 67.24029541015625"></polygon>
  </g>
  <rect class="cls-4" x="252.761141357361339" y="38.251229713136127" width="100" height="50" rx="4" ry="4"></rect>
  <text class="cls-2" transform="translate(264.968170166015625 67.927017211914062)"><tspan x="0" y="0">h264parse</tspan></text>
  <g>
    <line class="cls-1" x1="494.563842773438409" y1="63.251220703125" x2="512.428314208984375" y2="63.251220703125"></line>
    <polygon points="511.261108398438409 67.24029541015625 518.169281005859375 63.251220703125 511.261108398438409 59.26214599609375 511.261108398438409 67.24029541015625"></polygon>
  </g>
  <rect class="cls-4" x="374.563856097101961" y="38.251229713136127" width="120" height="50" rx="4" ry="4"></rect>
  <text class="cls-2" transform="translate(388.942825317382812 67.927017211914062)"><tspan x="0" y="0">v4l2h264dec</tspan></text>
</svg>

The flow of the use case execution is as follows:
1. The camera source facilitates the input video stream, which is split into two
                    using tee. One stream attaches to the qtimetamux and the other stream undergoes
                    inferencing.
2. tee splits the output inference stream in two and postprocesses both the
                    streams.
    - One stream attaches to the qtivcomposer. The Waylandsink uses this
                            stream to render processed result on the Wayland server.
    - qtimetamux uses the other stream to attach the inference result. This
                            stream passes to the qtimlmetaparser to extract the ML metadata and
                            RedisSink to stream metadata over the Redis channel.

Figure : Sample output on redis channel
            
            ![](data:image/png;base64,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)

**Parent Topic:** [Custom Gstreamer pipeline use cases](https://docs.qualcomm.com/doc/80-70023-50/topic/custom-gstreamer-pipeline-use-cases.html)

Last Published: Mar 27, 2026

[Previous Topic
Multi model daisychain detection classification](https://docs.qualcomm.com/bundle/publicresource/80-70023-50/topics/multi-model-daisychain-detection-classification.md) [Next Topic
Run multimedia use cases](https://docs.qualcomm.com/bundle/publicresource/80-70023-50/topics/multimedia-use-cases.md)