How to identify the USB camera in Windows? - qt

I am looking for the physical id of the camera to identify the device by Windows API(or OpenCV/Qt API any possible solution in Windows platform).
Eg. There is two same use camera which has the same brand and type. So I need to identify the captured image is from which one.
If identify camera is impossible, How about detecting the camera is using which USB port?
BTW is possible to physically modify the PID/VID/Name of the camera?
Update:
I couldn't find the solution...so pay the USB camera manufacturer and ask them to modify the PID to the specified ID.

Related

Accessing IP Camera stream in browser

I am trying to access stream of ip camera in browser, I can access it via its dedicated mobile app but unable to access the ip in browser. I don't have in depth network knowledge. But I guess there must be a way to achieve this if there is a way to identify the protocols used by camera. I am using hdwificampro, any direction to proceed.
Is there a checklist to follow to find this out?
What is the camera brand?
The first step is to discover the ip address and port of the camera. Usually, each camera manufacturer offers a software tool that is able to scan your network to retrieve the IP address of the camera.
For example, with a Uniview camera, you would use their EZTool, as described here: https://rtspplayer.com/?p=238
If the camera is ONVIF compatible, you could be able to discover the camera using ONVIF Device Manager: https://sourceforge.net/projects/onvifdm/
Finally, once you get the ipaddress, you only need to type it in your browser, using this format: http://ipaddress:port/

How do I program this BLE location tag?

I bought one of these:
https://www.aliexpress.com/item/Smart-finder-Key-finder-Wireless-Bluetooth-Tracker-Anti-lost-alarm-Smart-Tag-Child-Bag-Pet-GPS/32806261079.html
As far as I can tell it is a BLE (Bluetooth Low Energy) location tag.
I downloaded the app for it onto my iphone, and the app instantly recognised it and connected to it. The iPhone app seems to know how far away the tag is - it has a little map of the local area and says how many feet away. I was able to set the device name via the app, but I'm not sure if that set it locally or on the tag itself. The iPhone app also has a "find" button - when you press it, the tag beeps.
So I want to know how I can program this thing myself. I want to be able to identify it when it is nearby, connect to it and make it beep. I've searched for quite a while but not come up with much.
I'm assuming (wrongly/rightly?) that there is some general standard or approach for talking to these BLE location devices and carrying out the basic functions with them - but what is that standard - where is the documentation?
Does anyone have any idea how to program these BLE location tag devices?
BLE devices typically communicate using GATT, either using standard GATT services, or custom ones. The command to make it beep is probably implemented using a custom GATT service.
For finding out the distance to the beacon, typically the RSSI is used. This is a measure of the received power. It needs to be compared to the output power at the emitter. Usually beacons will put their output power in advertisement data, so it can be used without connecting to them. Here since the app is also able to send commands to the beacon, chances are it keeps a connection to it and has a custom GATT protocol to retrieve the output power.
Here is what I would suggest:
Read up on BLE, especially advertising and GATT. For instance read this for advertising and this for GATT. The full BLE spec is available here but should be used for reference and not introduction
Sniff the communication between your device and your phone. You can see this other answer of mine to get started
Replicate the communication protocol in you own app. For that you'll need to use your target platform's BLE libraries. For instance for iOS it is CoreBluetooth

How to extend Sony Remote Camera API access point range?

Just for reference the Sony Remote Camera API only works by using a 1:1 Wifi Connection
The Wifi signal strength of my Sony DSC-HX60V camera already drops after a few meters distance. But I want to be able to remotely control the camera over a range of 50 meter. There is no way that the onboard Wifi can achieve this range.
So now Iam looking for a solution to this problem. If it helps a local Wifi router exists that covers the whole range:
A normal Wifi repeater seems to be the best option, but according to a Forum Post using a repeater does not work, because the repeater acts a client and the camera can only connect to one client at the same time. Did someone got it to work with a repeater?
Additionaly I was thinking about using a Raspberry Pi with a second Wifi adapter that connect to the local Wifi and manages the API requests.
Any other ideas?
Disclaimer:
Even tho this Question may be more Hardware and Network related and thereby fits more into the SuperUser Network. A working Network connection does not necessary imply that the API is working aswell. This is why I posted this Question here
If you have a router which can work in 'client mode' that should be able to make a 1:1 connection with the camera, and then present that link over ethernet - you may have issues with network addresses and/or discovery if your main network is a different IP range to what the camera offers/DHCP's.
Some of the Sony cameras support 'multi-wifi' where the camera connects to an external device (normally the LiveViewRemote, but can be a router). Unfortunately the HX60 (and presumably any of the Play Memories SmartRemote app based ones) does not seem capable of this.... maybe the QX1 is an exception as it's supposed to work like this.
This connection connection is managed via WPS, and once connected the RemoteAPI works well. Works for my AS100.
If you are looking to set up a RaspPi, I can confirm that it works with this Python library:
https://github.com/Bloodevil/sony_camera_api
https://www.youtube.com/watch?v=xR3gAfu4Hfw

Display video stream over http on xamarin.forms

I'm streaming raspberry pi's pi camera over pi's local ip address with specific port. (eg: 192.168.1.111:8000/stream.mjpeg)
I can see the stream over xamarin.forms webview but I want to display it on Xamarin.Forms app with local media players for both iOs and android. Thus I can add control buttons for camera under the videoview. since it is live streaming I dont need forwards or backwards button functionallity.
I definitely lookup at least 5 pages per google search for all the keywords I have but there is nothing I find useful.
Any clues, starting points are appreciated too.

beginner in GSM: develop GSM locator

i'm a beginner, and i trying build a GSM embedded device that could send SMS to a mobile phone, so that the phone can locate the location of the device.
I have searched this website for similar topic, what come to me is triangulation calculation.
My question is how do i know which tower the GSM device is near to, and how to connect to these three tower to calculate the location?
In order to do cell triangulation, you need to know the geographic position of the cell towers.
Either you undertake a huge effort to build a cell tower inventory or you are the network operator. In practice, only the network operators render this service, some allowing to query locations via an interface. However, this is not standardized.
you have to purchase GSM module. connect it with microcontroller
read at commands provided by manufacturer first.
there is a AT command for your application
try searching following in datasheet:
AT+CREG.
first configure module using this command.(refer your datasheet of gsm module).
then turn on engineering mode using command:
AT+QENG=2,1. (refer datasheet)
now it will give you automatically ncell,bcch,dbm,bsic,c1,c2,mcc,mnc,lac & cellid
it will give you this periodically or by query according to your command.
there are many websites that can triangulate device feeding them this info
i.e. opencellid.org/
i hope this helps!

Resources