# Receiving Frames

## NetworkReader

The [NetworkReader](https://github.com/moetsi/Sensor-Stream-Pipe/blob/master/readers/network_reader.cc) pulls information from the zmq socket.

This follows the same IReader implementations as the other IReaders but is used on the client (receiving) side.

## Sensor Stream Client with OpenCV

[ssp\_client\_opencv](https://github.com/moetsi/Sensor-Stream-Pipe/blob/master/clients/ssp_client_opencv.cc) is a good template Sensor Stream Client implementation because it can visualize incoming data streams to show that the transfer is taking place.

Sensor Stream Client creates a NetworkReader on the specified port from the command line.

Once the zmq message has been decoded and provided as a vector of FrameStructs by the NetworkReader, the client then can visualize the frame data using an opencv window.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://sensor-stream-pipe.moetsi.com/additional-processing/open-in-opencv.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
