Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Help: List of suppported Camera's #35

Open
Benehiko opened this issue Dec 11, 2020 · 16 comments
Open

Help: List of suppported Camera's #35

Benehiko opened this issue Dec 11, 2020 · 16 comments
Labels
help wanted Extra attention is needed

Comments

@Benehiko
Copy link
Member

Help wanted

For those out there that are using the library, would you be so kind as to mention which Reolink camera's you are using the library with.

Just paste the information on this issue and it will be added to the README.md file

@Benehiko Benehiko added the help wanted Extra attention is needed label Dec 11, 2020
@Benehiko Benehiko pinned this issue Dec 11, 2020
@themoosman
Copy link
Contributor

RLC-423
RLC-420-5MP
RLC-410-5MP

@Benehiko
Copy link
Member Author

RLC-420
RLC-520.

Source by rafa-to via Reddit

@Benehiko
Copy link
Member Author

RLC-520
RLC-410

Source by yknott via Reddit

@CrashLaker
Copy link

C1-Pro

@Siceth
Copy link

Siceth commented Jan 12, 2021

RLC-410
D400
RLN8-410 (if NVRs count)

@Benehiko
Copy link
Member Author

RLC-410
D400
RLN8-410 (if NVRs count)

Did you use the reolinkapi library to connect to the NVR?

@Siceth
Copy link

Siceth commented Jan 12, 2021

RLC-410
D400
RLN8-410 (if NVRs count)

Did you use the reolinkapi library to connect to the NVR?

Yes. I know the library's aimed at cameras, but my purposes were for NVR account control. Obviously things like raw streams will just error, but most of the calls work just great.

Thank you for all your contributions so far!

@Benehiko
Copy link
Member Author

RLC-410
D400
RLN8-410 (if NVRs count)

Did you use the reolinkapi library to connect to the NVR?

Yes. I know the library's aimed at cameras, but my purposes were for NVR account control. Obviously things like raw streams will just error, but most of the calls work just great.

Thank you for all your contributions so far!

That's really good to hear! We could add the NVR as well in the readme and just specify streaming to be broken.

@socpl425
Copy link

socpl425 commented Mar 1, 2021

Reolink RLC-410W 4MP

@AnthonyReid73
Copy link

RLC-511W (Firmware v3). Working fine!

@jimmyEverguard
Copy link

Does this api support cloud camera ex: Reolink Go?

@themoosman
Copy link
Contributor

Does this api support cloud camera ex: Reolink Go?

No, cloud cameras are not supported and will not work.

@bmxp
Copy link

bmxp commented Apr 14, 2022

I have an E1 outdoor here.

  • snap image - did not work for user admin. After creating a new user it works
  • have no valid certificate installed. After implementing a fix within stream.py for calling requests.get() it works. see PR#57
    I have expierienced some problems with answers from my cam so I extended it a little to only create an image from response it the mime is not text/html:
          def get_snap(self, timeout: float = 3, proxies: Any = None) -> Optional[Image]:
              """
              Gets a "snap" of the current camera video data and returns a Pillow Image or None
              :param timeout: Request timeout to camera in seconds
              :param proxies: http/https proxies to pass to the request object.
              :return: Image or None
              """
              data = {
                  'cmd': 'Snap',
                  'channel': 0,
                  'rs': ''.join(choices(string.ascii_uppercase + string.digits, k=10)),
                  'user': self.username,
                  'password': self.password,
              }
              parms = parse.urlencode(data).encode("utf-8")
    
              try:
                  response = requests.get(self.url, proxies=proxies, params=parms, timeout=timeout, verify=False)
                  if response is None:
                      return None
    
                  if response.status_code == 200:
                      if response.headers.get('Content-Type','text/html') == 'text/html':
                          data = response.json()[0]
                          error = data.get("error",None)
                          if error is not None:
                              import pprint
                              pprint.pprint(error)
                      else:
                          return open_image(BytesIO(response.content))
                  print("Could not retrieve data from camera successfully. Status:", response.status_code)
                  return None
    
              except Exception as e:
                  print("Could not get Image data\n", e)
                  raise
    
  • cam.go_to_preset() also works. I am still thinking how to integrate this cam further so I might add here other findings

I would suggest to separate stream.py into grab an image only and stream.py itself. Otherwise one will need to install the whole bunch of additional requirements which might not be needed if one only wants a simple snap.

@Benehiko
Copy link
Member Author

Benehiko commented Apr 17, 2022

Hi @bmxp
Could you rather add your findings and implementation detailts to a separate issue?

PRs are welcome! :)

@pypb
Copy link

pypb commented Jul 12, 2022

E1 Zoom

@Helias
Copy link
Contributor

Helias commented Aug 19, 2022

RCL-510a

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

10 participants