# Frame from IP camera thinning using OpenCV and GStreamer

**URL:** <https://forums.developer.nvidia.com/t/frame-from-ip-camera-thinning-using-opencv-and-gstreamer/156550>\
**Category:** Jetson Xavier NX\
**Tags:** opencv, gstreamer\
**Created:** [October 8, 2020, 1:21am UTC](https://forums.developer.nvidia.com/t/frame-from-ip-camera-thinning-using-opencv-and-gstreamer/156550 "2020-10-08T01:21:43Z")\
**Posts on this page:** 1\
**Showing post:** 3

<div class="post-metadata">

**Author:** ![DaneLLL](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/danelll/32/14043_2.png) [@DaneLLL](https://forums.developer.nvidia.com/u/DaneLLL)\
**Post date:** [October 8, 2020, 2:48am UTC](https://forums.developer.nvidia.com/t/frame-from-ip-camera-thinning-using-opencv-and-gstreamer/156550/3 "2020-10-08T02:48:42Z")

</div>

Hi,  
On Jetson platforms, you would need to run gstreamer + OpenCV like:

> [@Doesn't work nvv4l2decoder for decoding RTSP in gstreamer + opencv](https://forums.developer.nvidia.com/t/140321/3):
>
> Hi, We try to launch public RTSP source and it works fine: import sys import cv2 def read\_cam(): cap = cv2.VideoCapture("rtspsrc location=rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny\_115k.mov ! rtph264depay ! h264parse ! nvv4l2decoder ! nvvidconv ! video/x-raw, format=(string)BGRx ! videoconvert ! video/x-raw,format=BGR ! appsink ") if cap.isOpened(): cv2.namedWindow("demo", cv2.WINDOW\_AUTOSIZE) while True: ret\_val, img = cap.read(); …

This is not an optimal solution because there is memory copy in

```auto
nvvidconv ! video/x-raw, format=(string)BGRx ! videoconvert ! video/x-raw,format=BGR

```

We would suggest use pure gstreamer or jetson\_multimedia\_api. If your usecase is deep learning inferencing, you can try Deepstream SDK.

---

_[View the full topic](https://forums.developer.nvidia.com/t/frame-from-ip-camera-thinning-using-opencv-and-gstreamer/156550)._
