Hi there.
I few weeks/months ago, I won a cheap chinese ipcamera with 3 lens (two fixed and one PTZ capable).
I was expecting that it would work flawless by Onvif like one other a have (with onle one camera ptz-capable), but wasnt that easy.
For any other fellow that is struggling with the RTSP ilnk you can extract from this kind of cheap camera, and even when you try to put other channels on link you only can see the main ptz camera, this post is for you.
You probably already tried many tricks such as:
nmap -sV --script rtsp-url-brute (IP)
and/or
nmap -sV --script rtsp-method (IP) -p (port)
And got a RTSP url like:
rtsp:///user=[USERNAME]_password=[PASSWORD]_channel=0_stream=0.sdp?real_stream
As I said in the beginning, changing the channel parameter do nothing (but changing the stream from 0 to 1 change to sub stream with low resolution.
I also tried the one trick with SD Card, putting a file called ceshi.ini on it with:
[CONST_PARAM]
rtsp = 1
rtsp_enable = 1
rtsp_ctrl = 1
onvif_enable = 1
But this kind of trick probably only applies to really v380 cameras (even if they also work on ICSEE app).
As you can see by now, the results vary even in the same kind of camera, same apps, or same brand.
The one I won, was only write in box like: MultiLens View Yieqin 360, and as a “model” P15H. I look at google and all internet and found nothing usefull.
The box also sais that a 9MP Wifi IP camera (bullshit… the main camera its only 1280x720 in main and 640x360 in sub, and the fixed ones I’m still not sure if its also 640x360 or 800x(something).
After a deep inspection at the camera (dissasembling, and using other apps and methods on linux that is not relevant for this post, I found the real hardware specification (except for the two fixed cameras) [I swear, this will be relevant for whom reach this post and try figure out if it will work on their camera]
P20-SP3-DSGrey(IPG-X3-WE2Q)
SoC: XM535D1
Sensor: XM650V200
Meaning, its a XMEye camera, JFTech or somthing like this
I have reached also on the firmware download for all of their cameras (including this):
But even the dfirmware download name saying “ONVIF” on it, nothing change.
The solution:
First things first, in ICSEE app (or XMEYE WebGUI to camera, yes, work on 80 port, but ONLY with old IE (not on Wine, because need some weird plugin, also VM software in Wine run and find the camera, but no work properly to change parameters and settings, at least not with me, but I havent insist nor trying too much on this line).
Well… on the ICSEE app or web, find the real login and password of the camera (do not use admin:admin or admin:admin123456 it will not work on the solution).
You can change the password on there (but I havent tried yet because it took so long to reach to the solution and get evertything workin properly (barely), that I’m afraid to touch in anything and everythings go south.
the credentials it wil be something that looks randomic, such user=fgaw and pass=orf54g (thats not mine, but looks like this more or less)
if you find some credentials like admin:(some-randon-8char), I found this too, but didnt work for me on the solution.
Well, now… you will do need go2rtc (could be that one inside FrigateNVR if you already use it)
The solution was partialy inside the descritpion of the icsee-ptz github ha-addon, but in there instructs only the use for main camera (did not specify for 2 or 3 lens camera), I only tried by luck and for my surprise did work.
In other topics I saw someone saying this kind of camera use port 34567 for media with dvrip protocol, but I tried this with no luck at the beginning (probabley because I have tried with admin:admin or something else).
Anyway, ICSEE-PTZ addon for HA its optional but hightly recomended.
go2rtc:
streams:
fg_cam_copa3:
- dvrip://fxxxx:[email protected]:34567
- ffmpeg:fg_cam_copa3#audio=copy#async#video=copy#async
fg_cam_copa3_sub:
- dvrip://fxxxx:[email protected]:34567?channel=0&subtype=1
- dvrip://fxxxx:[email protected]:34567?backchannel=1
- ffmpeg:fg_cam_copa3#audio=copy#async#video=copy#async
fg_cam_copa3_ch2:
- dvrip://fxxxx:[email protected]:34567?channel=1&subtype=0
fg_cam_copa3_ch3:
- dvrip://fxxxx:[email protected]:34567?channel=2&subtype=0
the async part, use only if you have problems with video and audio out of sync (because this protocol its not smooth like rtsp)
till now its only this, if I find something else I will complement in this post.