JPEG From Hikvision Cameras

Anybody familiar with how to pull a JPEG from a HIKVision camera using the latest firmware?

You used to be able to use the format :

http://admin:12345@184.49.77.68:80/Streaming/channels/1/picture

But since upgrading a DS2CD6412FWD to the latest firmware (v5.17 from 5.13) it no longer works. The firmware update notes mention compatibility with HIKCGI2.0 but there is absolutely no documentation on HIKCGI on the HIkvision website, nothing on the FTP site, no technical bulletins or anything. The HIK rep sent me a pile of outdated information which doesn't help either.

Anyone?


Have you tried?

http://admin:12345@184.49.77.68:80/PSIA/Streaming/channels/1/picture

Do you have Wireshark?

Tried that, but it asks for a username/password which is a problem, and then when I enter it, I get the following error :

This XML file does not appear to have any style information associated with it. The document tree is shown below.
<ResponseStatus xmlns="urn:psialliance-org" version="1.0">
<requestURL>/PSIA/Streaming/channels/1/picture</requestURL>
<statusCode>4</statusCode>
<statusString>Invalid Operation</statusString>
</ResponseStatus>
and yes I do have Wireshark - please tell me what you had in mind

Just that you could bring up the web page and start Wireshark and then request a snapshot from the web interface and look for the http call. You could also do the same thing with ONVIF device manager, sometimes that will be a different URL.

Well, I know the http call, it's just the http URL I'm typing in - I don't think Wireshark would give me any additional info. It sounds like HIKvision has changed their CGI command list and just not told anyone.

No Scott, I am talking about bringing up the Hikvision client web page served by the camera:

Or any tool that you use to view the camera that also has snapshot capability.

Make sure it works in the tool. Then capture that interaction with Wirseshark. Then look thru it to see what it used.

I'm not seeing anyone complain about the snapshot URL changing, so I'm thinking something else is going on. Is the Xml response you you posted above the same one you were getting before?

Heres a guess: maybe the new firmware has disabled basic authentication, and made digest mandatory, that would mean you can't embed the user name password in the URL like you are.

I'll check that theory out and let you know...

Here's your version 2 HIK API document:

http://oversea-download.hikvision.com/uploadfile/Leaflet/ISAPI/HIKVISION%20ISAPI_2.0-IPMD%20Service.pdf

though it's from before the firmware update

Scott, It hadn't dawned on me at first, but firmware 5.1.7 sounds like pre hack firmware, which I believe started with 5.3.

I'm not sure why they don't have a newer one, but if memory serves there a bug in those versions that lets you do an unauthenticated snapshot using /onvif/snapshot and no credentials.

Tried http://<ip>:<port>/onvif/snapshot but nothing happens. Also tried http://user:pass@<ip>:<port>/onvif/snapshot - no dice. I've got anonymous access mode on and rtsp authentication set to basic.

Most of the HIK cameras are on 5.3 firmware but this one is a DS2CD6412FWD so it's got 5.17

Is any client, like ONVIF device manager, or SADP able to show a snapshot?

I can get a live video feed through a Web browser or ivms etc but what I want is to be able to pull a live still image from a url.

Yes, I understand what you want to do.

I am not talking about live h.264 video.

I am only talking about still images.

Surely your client has the capability to save a still image or snapshot?

Try it. If it works, then you sniff to find out what http call it is making.