> For the complete documentation index, see [llms.txt](https://sensor-stream-pipe.moetsi.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://sensor-stream-pipe.moetsi.com/additional-processing/open-in-opencv.md).

# 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.
