Server push Jpeg and Chrome/iOS Safari/Webkit
  • I have been having problems with server push jpeg.. I embed images from SecuritySpy into my own page and a little while ago chrome decided that it wasn't going to play ball and now won't show the images. Safari on iOS did the same I think when iOS6 came out.

    I have the same issue when using the web interface for SecuritySpy (which I think uses the same method to get the images). the strange thing I have noticed is that if I just have a single image link and no HTML then Chrome at least will render the image perfectly. I can use the javascript refresh technique but the FPS is a bit poor using that. Quicktime mp4 I would have thought would be the best solution but that seems to not work for me at all.

    Any ideas would be great!
  • The section of the user manual that covers this is here, but it sounds like you've read it already.

    Both Chrome and Safari, on both OS X and iOS, support the server-push JPEG stream. This should simply be a case of putting the URL (described at the above manual link) into your page inside a HTML "img" tag.

    If you use SecuritySpy's web server directly and select the server-push option, does that work? If so, there's something wrong with the HTML code on your custom page.

    Note that Safari will only display 6 streams at the same time as it has a limit imposed on the number of connections to the same server. Chrome also has a limit of 6, but this can be configured.

    The QuickTime MPEG-4 stream works on OS X but not iOS.
  • This might answer my question about embedding video on my webpage, but it appears that Appendix 2, which your link points to, doesn't exist. Is it available elsewhere?
  • Things have changed a bit since I posted the above information in 2013. I suggest you use either method 1 or 2 described on our blog post Adding Live Video To Any Web Page. Let me know if you have any further questions about this.
  • Yup, found that and tried both without success.

    Using
    img src= "http://myusername:mypassword@carlsbadwx.viewcam.me:8090/++video?cameraNum=1"

    Yes, I put actual user names and password in and checked they were right, Yes, I am using port 8090, and yes the camera is designated as camera/stream #1. But all I get is a broken image icon (404).

    Javascript approach produces nothing. Yes, I put the script in the head. Yes, I added onload phrase to .

    Oh, and yes, I've trashed cache and restarted browser, but no joy.

    Safari 10.0.3, Chrome 56.0.2924.87. OSX 10.12.3 on late 2013 iMac 16Gb
  • 404 "not found" indicates the camera number is incorrect. Please check the "Camera Info" window to verify the camera number is in fact 1 (click the header where you see the column names to enable the camera number column).

    Also check that the permissions setup for the user in question has the ability to view live video from the camera.

    If it still doesn't work, please email us and provide the actual username and password (or a temporary one you can set up for us) and we'll check ourselves.
  • I had a similar issue recently with Chrome not loading said camera images when I had normal user:password authentication in the img tag of the HTML. I dug deeper and found Chrome was disallowing the resources because they contained credentials in their URLs. I stumbled upon the solution after I had mostly given up looking, in the following discussion: https://www.bensoftware.com/forum/discussion/comment/6353

    Review "Authentication in URL" at the bottom of https://www.bensoftware.com/securityspy/web-server-spec.html

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!