Pelco Developer Network (PDN)

Unable to Play with SDK or SDk Feature Tester

I cannot start Video Streams using SDK

I'm unable to get Video Streams from neither my VideoXpert nor Digital Sentry systems.
I'm trying to create some integration of CCTv systems into a more complex system as I did with several other brands of CCTV systems.
I started using the SDK OCX, I have the SDK redistributable and all the required comoponents.
I made several attempts and at the beginning I suspected it was a problem of the way I was using it (through Embarcadero Delphi programming language) so I switched to the SDK Feature Tester and the same problems are present.
As far as I understand I should Start the system as a "pelcosystem" but whichever of the existing users I try (existing users of the system and ones that work perfectly with VideoXpert Operations Center for example) as in Pic 01.png, I get the "Invalid Credentials" message 02.png
If I select pelcoedgeservices, I'm able to register the system and connect to it as in Pic 03.png. But doing so no configuration is loaded, and if I try to open the video stream of any existing camera, the messages shown here are shown in the log:
08/08/2018 10:17:48 a.m. : System Added : carlos:Segur0606@pelcoedgedevices://
08/08/2018 10:17:50 a.m. : User login successful
08/08/2018 10:17:50 a.m. : SDK Call : Login
08/08/2018 10:17:50 a.m. : Username :carlos Password :Segur0606
08/08/2018 10:17:50 a.m. : GetDeviceCollection started for Uspallata
08/08/2018 10:17:50 a.m. : There is no device available in Uspallata system
08/08/2018 10:18:03 a.m. : User login successful
08/08/2018 10:18:03 a.m. : SDK Call : Login
08/08/2018 10:18:03 a.m. : Username :carlos Password :Segur0606
08/08/2018 10:18:03 a.m. : GetDeviceCollection started for Uspallata
08/08/2018 10:18:03 a.m. : There is no device available in Uspallata system

The System IP is OK, the port I asume that is Ok (443) and my system is perfectly working, has tens of cameras connected and recording, etc.
What is wrong or missing? Because theorically the SDK Frature Tester should do exactly wehat is required and neither it is able to give me a single stream.

Many thanks in advance, Pablo

Admin Edit: to display attachments, please review this post: Post Attachments




Thanks for your post, sorry to hear that you are having some trouble. I did edit your post to display the screenshot attachments (they aren't displayed by default; our forums are not intuitive on attachments).

You're attempting to use Pelco SDK with VideoXpert, is that right? I do not suggest that. The last time Pelco SDK was updated, tested, and released was over 2 1/2 years ago, and it would not be compatible with current VideoXpert versions. In fact, I believe that anything VideoXpert 2.X, maybe even VX 1.12, won't work with the older Pelco SDK. You'll need to review and use the VideoXpert SDK for this scenario.

For the Digital Sentry system, you will need to use the Pelco SDK (unfortunately). I say this because neither solution - Pelco SDK especially - hasn't seen updates in a long while. It is necessary to install DS Pelco API on the Digital Sentry so that it has the API service running on Digital Sentry for Pelco SDK to communicate with. If you don't have that there, then it won't work. The Port for this scenario would be 60001, as the DS Pelco API service basically results in Digital Sentry attempting to Emulate an Endura System (with System Manager, Storage, and cameras acting like Multi-channel encoder). This also isn't recommended.

I would really encourage you to look at using the VideoXpert SDK with VideoXpert, starting with VX Pro. We do have some very major front-end changes coming with the next release of VideoXpert, to warn you. Most functionality is remaining the same, however the next release of VX will not be backwards compatible with older versions of VX SDK.

Not being a practical solution, thanks at least for the clear answer.

Many thanks for the answer, it was quite clear. But it’s a pity that the official information doesn’t state what you mention. The documentation of the SDK clearly specifies that it supports VideoXpert, so a normal person would be lead to try for weeks (as we and our developers did) not finding any understandable reason to the explained behaviors.
It is good now to know, but I really think Pelco should update the documentation of their development products.
We are going to try again, now knowing that only the specific VideoXpert SDK is able to communicate with current versions.
Just as a comment, most of the CCTV vendors try to encapsulate in a single SDK all their products (as theoretically did the Pelco SDK or that is what is claimed everywhere). In this case having to use different parts of code (with hundred megs of Redistributable Installation each) is not very useful and compared to several state of the art solutions of other vendors is much less convenient.
Not being a practical solution, thanks at least for the clear answer.

I'm sorry that the release documentation (that hasn't been updated in quite some time, that's very true) only indicates VideoXpert compatibility without the additional Notes that we've posted to PDN. That's because we haven't sent out a release to have new documents, and I do understand that it really should be there.

There are notices on the Pelco SDK page here: Pelco SDK, and on the Downloads page for Pelco SDK here: Pelco SDK Related Downloads that indicate that new developments should make use of the VideoXpert SDK, and that Pelco SDK is only still on this site for old development efforts that might need access to obtain it for their solutions. These notices are not in the available Pelco SDK Documents that can be downloaded, so I do understand the point.

I *totally* agree that we ought to have the same SDK for all of our VMS Platforms. That was our original intention at the start of the the VideoXpert lifecycle. It became too burdensome to continue to support older VMS platforms like Endura and Digital Sentry and it was increasingly clear that there was a better way to do it.

Unfortunately, there were very good reasons for us to break that hope when the development of VideoXpert became an opportunity to 'fix' what many complaints we had received from our partners about Pelco SDK in years past. Specifically and most importantly was that users of Pelco SDK were forced to use a streaming mechanism that we dictated and included in Pelco SDK Quite many partners did not like it and what behaviors it forced them to settle with. Using the VideoXpert SDK does not inherently include streaming, and our samples to include ways to obtain streams using GStreamer as examples.

Again, I'm sorry for the time and effort that it cost you to review old material, and I do hope that you will be happier with the Videoxpert SDK solution with VideoXpert. Feedback from our development partners over the years has been much more positive using this set of tools.

VideoXpert ActiveX component?

Ok. Thank you for the clarification.
I have been investigating the VideoXpert SDK and I haven't found any ActiveX control to easily embed an SDK wrapper in Win applications. Is there any equivalent to the one existing on the PelcoSDK or other vendors SDKs?
Thanks in advance.
Regards, Pablo.

There is not an ActiveX control for streaming in the VideoXpert SDK. Because streaming mechanisms are left to our partners, we intentionally did not include an ActiveX control so that our partners have the freedom to stream how they want.

Some partners choose to use VLC, others use GStreamer methods like what are included in our samples. Other partners already have their own streaming controls that they have developed in-house. The choice is up to you.

Chris, I was trying to use VLC with no success for the while.
VideoXpert SDK documentation is not very straightforward in comparison to the Pelco SDK.
The model itself of functioning is not clearly explained. There are no good block models that could lead to a whole understanding.
As far as I was able to understand, the streamings would be generated as RTSP s or equivalent flows. Is it spossible as in many vendors creating a very straightforward live stream as:
rtsp://user:password@IPAddress/Some parameter
Just to pick the video of one of the cameras declared on the system? The RTSP examples I've seen in the documentation use the uuid, something that as far as I know only can be received by calls to some classes methods of the SDK. So the SDK doesn't do all the job, it makes only some handshaking one and the 95% percent of the real job is made by something external. So why you kept the 5% for something that is not straightforard to use.
We use Delphi and I was trying to convert the C++ headers which are very disperse and not concentrated. It is a huge task. And it is only to perform the 5% of the job. It is quite unefficient.
In a brief:
What would be the most straightforward way of using an assembly or direct .dll of the SDK from any language to get basic information to later start with RTSP a video flow in a streamer?
Many thanks in advance. Pablo.

Thanks for your post.

I apologize -- I am finding it challenging to follow what you're saying in parts of your post. I do see some questions that we can answer. I'll address those and provide information to help out with your question.

I'm sorry that you are frustrated with translating things to Delphi. Our SDK was built for C++ and C#. While we would love to make versions available for every developer we come into contact with, it just isn't feasible right now for us to do that.

For the RTSP question; there is information on the GitHub website - where the samples are - for several use cases. I showed your post to one of our developers and he specifically said that this use case should help you in what you are looking for in RTSP uri values: Get an RTSP URI from a datasource. You are correct; we get you started on the streaming path and then the rest of it is up to you on how you want to implement.

If that information about the RTSP URI is not what you are looking for, please clarify further. The VideoXpert SDK does not provide streaming by itself by design.

Camera List

how to get camera list with sdk thnaks

Hello, thank you for your post.

Please create a new post on the subject, instead of starting to post on this one from over 9 months ago.

If you're using the older Pelco SDK, I should point out that we no longer provide active support for using it, and it is no longer under any active development. You should please work on transitioning to using the VideoXpert SDK.

If you have a new question, please post a new topic to the forums. Please indicate precisely which SDK you're using, and we'll do our best to help you out and point you in the right direction.