Connecting to a "P2P Wifi camera" - ios

I have a Chinese "P2P Wifi Camera" (model Q5) that i'd like to connect to from an iOS app.
The camera can operate in "LAN Mode" - in this mode i'm connecting from the phone/computer to the wifi network of the camera itself, and an app called "P2PCamViewer" displays the current picture.
However, i wasn't able to connect to it using my own code.
As far as i can tell, the camera doesn't respond to HTTP or RTSP requests, on any port (probed it using nmap). i also wasn't able to find any mac app that can connect to it.
I suspect the camera is somehow transmitting the data via a RTP stream, but i wasn't able to connect to it.
I've tried other similar cameras, but they seem also to operate in the same unknown protocol.
Ideally, i'd like to find a solution to connect to it from something like VLC, and then use VLCKit on my iOS app to connect to it.
Thanks!

If you just want to get the stream from the camera to your app, there are other ways.
Each IP Camera should have been configured with RTSP URI by the manufacturer. Check in their website or in user manual. For example: rtsp://192.168.0.5/video.
If you couldn't find the URI, refer this link for "How can I find the right RTSP URI for my IP camera?": http://ipcamlive.com/faqs.
Related software download link: https://sourceforge.net/projects/onvifdm/
Using this RTSP URI, you can use any RTSP player example and get the camera feed to your app.

Related

How to stream RTMP direct from an android divice to a windows pc in the fild without any Network

i would like to stream Dron video from the controler (Dji mavic air 2 with a RC-N1 controler) via RTMP direktly from the controler/my Phone to my PC wihl i am in the fields without having any internet conection or an extra Network. Is that some how possible?
First, you still need a network. You can create a hotspot using a computer (laptop) or a device that connects to the RC-controller (phone, tablet).
Secondly, you need an RTMP server that will be located in this network. As a quick example, I can recommend MonaServer2, it is easy to install and run.
Thirdly, you need someone who will "listen" to the server when the stream comes to it. For example, you can use a VLC player. Launch it and specify RTMP stream as a source.
So, you start the RTMP-server, let's say it is located at 192.168.0.1:1935. On your device connected to the RC-controller, using the standard DJI-Fly application or your own app developed using Mobile SDK, select the option to start streaming, specify the address: rtmp://192.168.0.1:1935/live. Next, launch VLC-Player, select File->Open Network Stream and type rtmp://192.168.0.1:1935/live in URL field. Now you will be able to watch live-stream in your VLC window.
This is the fastest and easiest way I can recommend.
Also you can take raw h264 frames from camera, send them to decoder and do whatever you want. If you need some more info about it feel free to ask. Hope it helps!

Get files from multiple Sony A7RII Cameras with the Sony Camera Remote API

I would like to download images from 20 Sony A7RII cameras, to a computer, without having to get the memory cards from the 20 cameras. I do not need to synchronize the triggering, I know this is not possible via software. I do not need the discovery service, I can figure the ip addresses myself.
I need to be able to read the image list and download images. Even better would be to get a notification when new images are available. Is the Sony SDK limited to a single camera? Is there really only an HTTP pull API via WIFI, or is there any way to connect to these cameras, via USB for example.
This is very easy to do with the Canon SDK, I'm looking for a similar solution for Sony alpha cameras.
Using the Camera Remote API you can read the image list and download images, however since the API uses a direct WiFi connection it can only connect to 1 camera at a time. The API only works over WiFi, not USB unfortunately.
You can connect all 20 cameras to one wifi-AP and then use PTP/IP to connect to all cameras at the same time.
PTP/IP supports event messages on new pictures being available but not sure if Sony supports it
Alternatively, you could leave the connections open and do regular pulls to check for new files
PTP also supports initiating captures (although I haven't tried on the A7RII) but you would have to ensure synchronisation yourself
If you're using Java, you could use my PTP/IP implementation which is explicitly tested with the Sony A7.
(Disclaimer: I have tried this only with the A7 but am assuming that the A7RII supports the same protocol.)

Capture cctv camera with iphone application using IP

I want to develop a cctv camera app and I don't know what steps I need to take.
i have the data below for connecting cctv camera:
Ip address
port ID
user name
password
i checked live555 and RTMPStreamPublisher demo from here, but i don't know where I should start. i also read that i should use the ffmpeg framework.
What I want is an app similar to kView on itunes. This app is able to stream a cctv camera feed with the above configuration detials
Does anyone know what direction I need to go in? Is there a demo or open-source app that accomplishes this?
i am not familar with ios development. Usually people build this kind of application base on ffmpeg. you can also try gstreamer.

Access Sony QX100 video stream with OpenCV

I want to access the camera's video stream with OpenCV.
Doing so, I connected the camera via WLAN with my Win7 PC. Further, Maybe a possible way to go is by http://ip:port/resource'). I tried e.g. http://10.0.0.1:65534/videostream.cgi?user=admin&pwd=123456&resolution=32" but did not succeed.
Does anyone know the necessary credentials {IP, port, user, password, etc..} for this specific camera's live video stream?
thanks in advance!
Take a look at the Camera Remote API:
https://developer.sony.com/develop/cameras/
Specifically check out the LiveView API. Should allow you to capture the live video stream.

How to display RTSP from IP Camera/CCTV in iOS

There is obviously a way to do this because so many applications are already doing it - NetCamViewer and iCamviewer to name just one.
I have searched and searched, but I'm not finding anything of value that gives a hint as to how this is done. I'm reaching out hoping that someone will give me a clue.
I'm trying to connect to an video security camera (Y-CAM), which supports the RTSP protocol, and display the video from my iPhone/iPad application. The camera has an IP address and I can view the video from a web browser and from Quicktime running on my Mac. The problem is that RSTP is not supported on iOS so even trying to connect using Safari on an iPad doesn't work.
I've read that some are trying to use Live5555, but I haven't seen an article that describes if it has been done successfully and how.
An alternative is to capture the RTSP stream on a server, convert it to an HTTP Live stream and then connect to the HTTP Live stream from iOS. Unfortunately, this hasn't proved as easy as it sounds.
I'd prefer to go directly to the camera like other applications I've seen do. the RTSP to Live is a fall back if I have to.
Any hints are greatly appreciated. Thanks!
This is wrong :) or not necessary (An alternative is to capture the RTSP stream on a server, convert it to an HTTP Live stream and then connect to the HTTP Live stream from iOS. Unfortunately, this hasn't proved as easy as it sounds.)
You should use ffmpeg library, as this library can connect any streaming server (supporting rtsp, mms, tcp, udp ,rtmp ...) and then draw pictures to the screen.. (for drawing you can use opengles or uiimage also works)
First of all, use avformat_open_input to connect to your ip address
then use avcodec_find_decoder & avcodec_open2 to find codecs and to open them (you should call them for both audio & video)
Then, in a while loop read packets from server by using av_read_frame method
When you get frame, if it is audio then sent it to AudioUnit or AudioQueue,
if it is video, then convert it from yuv to rgb format by using sws_scale method and draw the picture to the screen.
That's all.
look at this wrapper also (http://www.videostreamsdk.com), it's written on ffmpeg library and supports iOS
You really need to search stack overflow before posting , this question has been asked many times. Yes live 555 sort of works and some of us have gotten it to work..
There are other players too, including ours http://www.streammore.tv/
You can find an open source FFMepg Decoder for iOS (and somes samples) on GitHub : https://github.com/mooncatventures-group
Sample use of this library : http://sol3.typepad.com/exotic_particles/
There are two general technology to display RTSP video on iOS Safari:
RTSP / HLS (H.264+AAC)
RTSP / Websocket (H.264+AAC ==> MPEG+G.711 or H.264+?)
For HLS you can consider Wowza server.
For Websocket playback in iOS Safari you can use WCS4 server.
Main idea for websocket playback is direct HTML5 rendering to HTML page Canvas element and audio context. In the case of MPEG playback video decoding will be done on iOS Safari side using plain JavaScript.
Another option - install a WebRTC plugin with getUserMedia support and play this stream via WebRTC. Anyway you will need a server side RTSP-WebRTC transcoder in such case.

Resources