forked from NVIDIA-AI-IOT/deepstream_python_apps
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME
120 lines (105 loc) · 5.23 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
################################################################################
# Copyright (c) 2019-2020, NVIDIA CORPORATION. All rights reserved.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# and/or sell copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
# DEALINGS IN THE SOFTWARE.
################################################################################
================================================================================
DeepStream SDK Python Bindings
================================================================================
Setup pre-requisites:
- Ubuntu 18.04
- NVIDIA DeepStream SDK 5.0 Developer Preview
- Python 3.6
- Gst-python
--------------------------------------------------------------------------------
Package Contents
--------------------------------------------------------------------------------
The DeepStream Python package includes:
1. Python bindings for DeepStream Metadata libraries
These bindings are installed as part of the SDK at:
/opt/nvidia/deepstream/deepstream/lib/pyds.so
Sample applications that import is_aarch_64 automatically
have this path added.
A setup.py is also provided to install this extension into standard path.
Currently this needs to be run manually:
$ cd /opt/nvidia/deepstream/deepstream/lib
$ python3 setup.py install
2. DeepStream test apps in Python
The following test apps are available:
deepstream-test1
deepstream-test2
deepstream-test3
deepstream-test4
deepstream-imagedata-multistream
deepstream-ssd-parser
deepstream-test1-rtsp-out
deepstream-test1-usbcam
--------------------------------------------------------------------------------
Installing Pre-requisites:
--------------------------------------------------------------------------------
DeepStream SDK 5.0 Developer Preview
--------------------
Download and install from https://developer.nvidia.com/deepstream-download
Python 3.6
----------
Should be already installed with Ubuntu 18.04
Gst-python
----------
Should be already installed on Jetson
If missing, install with the following steps:
$ sudo apt update
$ sudo apt install python3-gi python3-dev python3-gst-1.0 -y
--------------------------------------------------------------------------------
Running the samples
--------------------------------------------------------------------------------
The apps are configured to work from inside the DeepStream SDK 5.0 installation.
Clone the deepstream_python_apps repo under <DeepStream 5.0 ROOT>/sources:
$ git clone https://github.com/NVIDIA-AI-IOT/deepstream_python_apps
This will create the following directory:
<DeepStream 5.0 ROOT>/sources/deepstream_python_apps
Follow README in each app's directory to run the app.
Example: running test1 app:
$ cd deepstream-test1
$ python3 deepstream_test_1.py <input .h264 file>
--------------------------------------------------------------------------------
Running the samples inside DeepStream SDK docker
--------------------------------------------------------------------------------
The general steps are:
1. Pull the DeepStream SDK docker of choice following the latest DeepStream
Release Notes at https://developer.nvidia.com/deepstream-sdk for more info.
Note that the deepstream-ssd-parser app requires the Triton docker on x86_64.
2. Run the docker with Python Bindings mapped using the following option:
-v <path to this python bindings directory>:/opt/nvidia/deepstream/deepstream-5.0/sources/python
3. Inside the container, install packages required by all samples:
$ sudo apt update
$ sudo apt install python3-gi python3-dev python3-gst-1.0 -y
4. Optionally install additional dependencies required by specific samples.
See README in app's directory for such requirements.
$ sudo apt install python3-opencv
$ sudo apt install python3-numpy
$ sudo apt install libgstrtspserver-1.0-0 gstreamer1.0-rtsp
$ sudo apt install libgirepository1.0-dev
$ sudo apt install gobject-introspection gir1.2-gst-rtsp-server-1.0
5. Run sample apps following directions in each app's README.
--------------------------------------------------------------------------------
Notes:
--------------------------------------------------------------------------------
As with DeepStream SDK, if the application runs into errors, cannot create gst elements,
try again after removing gstreamer cache
rm ${HOME}/.cache/gstreamer-1.0/*