DeepStream Installation

I am confused with the documentation of the DeepStream. I have a Xavier board with Jepack 4.1.1 Developer Preview installed successfully. I would like to install DeepStream and play with the sample models of DeepStream. The documentation assumes to install Deepstream with the help of host computer flashing Deepstream in board using the ip address. Cant I just install Deepstream directly to the Deveoper kit provided jetpack is already installed and ubuntu terminal is working quite well. Could someone guide me the right steps?

I haven’t looked at which versions are available, but JetPack is just a front end for flashing (actual operation done by the driver package) and additional package management (over ethernet from a fully running system).

You need an Ubuntu PC for the GUI front end. You can uncheck flash and just manage packages. If just managing packages, then USB can be left disconnected and recovery mode should be left out…just boot the Jetson normally. The PC has to have ssh access to the Jetson. So boot the Jetson, provide ethernet ssh access from the PC to the Jetson, uncheck flash, and check whatever package operations you want. If not flashing (and sometimes even if flashing) you will have to enter the IP address of the Jetson (watch the console for notes). A good starting step is just to see if you can ssh to the “nvidia” account on the Jetson from the PC.

Hi linuxdev, I did accordingly for Jetpack installation. But, I am confused with DeepStream documentation. It looks like the instlalation is done with just installing packages on dev kit and unpacking the binary tar files. I am confused should I still use the ssh to intall DeepStream if I the Jetpack is preinstalled?

To save some confusion first look here:

So part of my own confusion was that I was thinking you were asking about JetPack, but in reality I was wrong there because the DeepStream SDK is something which isn’t directly available via JetPack (however, you would still need the supporting CUDA to be installed via JetPack prior to DeepStream being useful).

DeepStream is not a “.deb” package and is not from a repository. If you look closely at the README file you’ll see that this is the unpack command after the initial unpack (because unpack produces binaries.tbz2, and then binaries.tbz2 is unpacked after that):

sudo tar -xvf binaries.tbz2 -C /

(this is the actual SDK)

The “/” is saying to unpack it from the root of the file system and directly install without any packages owning the files. Then, to make libraries visible, either reboot or run the command “sudo ldconfig”. That’s all there is to it, the SDK is now present and available. If CUDA support is present, then you can start working with DeepStream.

This is the part allowing deepstream apps to run, but does not provide headers or other development files. Presumably you might cross compile from a host or get examples with headers and copy those to the Xavier for build.

If still interested in what JetPack does, read on…

Just for the sake of conversation, be aware that JetPack itself is never installed to the Jetson, but instead to the host. One possible operation is to flash the Xavier via the driver package. Another possibility is to install various packages on the Xavier. The two are distinct operations, and the latter occurs over ethernet.

When installing packages there are generally two categories of installation: First, installation of a repository; second, installation of packages from that repository. Think of the repository as a data source, and package installation as a database query.

The part which sticks out as important in this case is that the “apt” and “apt-get” mechanisms will find, retrieve, and install packages from any configured repository. JetPack directly uses scp to copy a repo (".deb" format) file to the Xavier. Then the Xavier is told to install the repo via the dpkg command. Once this is in, then everything from that repo becomes available to “apt” and “apt-get”. This mechanism is indistinguishable as to whether the repo is local to the Jetson or remote over the internet from an official Ubuntu server. These package repos are copied directly to the Xavier.

If an install target is within that repo, then a simple apt-get command is run via JetPack after a remote ssh login to the Xavier. This installs files from the repo as requested. When you install CUDA via JetPack the repo is installed by copy of the CUDA repo to the Xavier, and then, from the Xavier, dpkg installs the repo. Once the repo exists, “apt-get” does the actual CUDA package install.

JetPack Downloads Manifest on Host
  ->JetPack Finds Repo File via Manifest URL and wget
    ->Copy Repo .deb File From Host to Xavier
      ->ssh to Xavier and then dpkg install of Repo (now CUDA repo exists in "/var")
        ->ssh to Xavier and then apt-get install of CUDA from local repo
# Now CUDA apps can function, including DeepStream if DeepStream is added to linker path (this is
# the ldconfig step or reboot step after the unpack of the DeepStream tar file to "/").

Thanks @linuxdev.

What is the default password for
$ ssh nvidia@
(that number is my xavier ip). I can not use “ubuntu” as the password.

Where to put DeepStreamSDK-Jetson-3.0_EA_beta5.0.tbz2 is?
I assume it is at Xavier, is not it?

Where is the tutorial to compile samples of DeepStreamSDK-Jetson-3.0?

thank you very much in advance.

warmest regards,

Don’t know about the samples (someone else will be able to answer about unpacking the .tbz2 file), but default passwords have always been “ubuntu” for “ubuntu” account, or “nvidia” for the “nvidia” account. The place this starts getting confusing is the until the most recent releases of L4T those accounts were present by default after a flash. That account may be missing now unless you’ve created it on the most recent release.

In the early days of Tegra there was just the “ubuntu” account. Later on an “nvidia” account was added which had some permissions for GPU and such. Some commands were documented and expected to be used with the “nvidia” account which is more or less just an admin account. In most cases the “ubuntu” account also worked for this. Nowadays you can just use whatever the initial account is you created during flash if you are on the most recent release and if the name/pass “nidia/nvidia” doesn’t exist.

Do we need to install Deepstream on Xavier using host machine or directly on Xavier board? As commented by Shuuny-Matrix above, it is unclear by documentation where it says ‘All of the following operations are performed on the development board’ to install deepstream SDK and then in step 2 it says ‘Copy the DeepStream SDK on Jetson archive file from the host system to the nvidia user’s home directory on the development board:’.

Can someone please help me with this?

following up to previous comment by me, I am getting error as mentioned below while executing command scp deepstream_sdk_on_jetson_partner.tbz2 nvidia@<ip_address>:~

error is:
nvidia@jetson-0423018054743:~$ scp deepstream_sdk_on_jetson_partner.tbz2 nvidia@$
ssh: connect to host port 22: Connection timed out
lost connection

Can someone please guide me on this?

@meena It looks like all the firmwares for deepstream sdk are installed while installing jetpack. You can download the sorce package directly in jetson and follow the instructions and it will work. Or you can download in the host computer from where you installed jetpack and copy using scp command as mentioned in readme. I think the documenation assumes that you are installing the Deepstream at the same time with Jetpack. But make sure that your jetpack is installed cleanly with all the depencies as mentioned. Thanks,

This is the network error as your host computer has not been able to connect with the Jetson. Port 22 might have been blocked to have an access, google this error you will find the solution easily. Or try to ping the host computer with Jetson and see the error and proceed accordingly with the error. Hopefully this helps, Thanks

This is the network error as your host computer has not been able to connect with the Jetson. Port 22 might have been blocked to have an access, google this error you will find the solution easily. Or try to ping the host computer with Jetson and see the error and proceed accordingly with the error. Hopefully this helps, Thanks