RTSP Streaming Plug-in

Hopefully, the plug-in will just work on the Z1 51GB Japan model if you install it from the source code.

I’m not sure how the camera OS checks if the Z1 51GB model is from Japan. It’s likely the serial number, but I’m assuming that is only if it is installed from the store.

1 Like

hello. (Long time no see)

Finally, the application for RICOH passed, and I was able to change THETA Z1 51GB to developer mode.

I tried launching the plugin in developer mode, but unfortunately it didn’t.

The procedure I tried is as follows.

# With USB connection

  1. Put THETA Z1 51GB in developer mode.
  2. Use the basic software to uninstall all currently installed plug-ins.
  3. Using Android Studio, run THETA-RTSP-plugin-master in developer mode. (It will also be installed at this time)
  4. Using Vysor, turn on the camera usage authority to the plug-in.
  5. In this state, you can start the plug-in and the camera image will be displayed on the Android screen.

# In wireless LAN client mode

  1. Put THETA Z1 51GB in wireless LAN client mode.
  2. Launch the plugin.
  3. The LED is red, the buzzer sounds three times, and unfortunately it cannot be started.

First of all, I will share what I tried.
Is there anything else I can try?

1 Like

I’m going to ask someone at RICOH if there is any restriction on using the client mode for plug-ins built from source running on the camera in developer mode.

In parallel, can you open a support ticket through the developer partner web form?

2 Likes

Thank you for your confirmation to RICOH.

In parallel, can you open a support ticket through the developer partner web form?

Yes, I also have access to the “Online support” page and the contact form.

Let me ask RICOH as well.

2 Likes

Thanks. The key thing to find out is if people with a Z1 51GB Japan model can do plug-in development with client mode applications.

I’ll ask as well, but you may get a faster and more official response.


Update: July 18, 2022

The best way to get an accurate response is to use the support link found in this document:

日本で販売しているRICOH THETA Z1 51GBでプラグイン開発を検討されている企業様へ - トピックス(日本)

1 Like

Hi @craig!

I’m experiencing the same problem, but only hen using Unity.

RICOH Theta Z1 beeping red twice and disconnecting from plug-in RTSP Live streaming.
The camera connects properly to my laptop hotspot. It properly live streams on VLC media player. But when I try to live stream the same IP on unity it gives me the above error.
I’ll have to start the plug-in again to see the livestream on VLC. It had worked just fine a week before on unity without any problems.

No falls of camera or any hardware damage.

Tried uninstalling and re-installing the RTSP plug-in but faced the same problem.

I think this error is due to the latest firmware update: version 2.10.3. Can you confirm this? Cause I’ve a demo coming very soon and had built my project over this live streaming on Unity.

Also if you can provide a tutorial to see livestream in Unity using ffmpeg, that would be great!

Thanks!

Are you using Windows 11 as the hotspot?

This person @syedjawadakhtar also reported problems connecting with Windows 11 in client mode with the Windows 11 machine as a hotspot.

Yes, I’m using Windows 11 as a hotspot.
I have asked that question as well on a different topic! :smiley:

1 Like

I’ll talk to @jcasman about testing Windows 11 as a hotspot and see if there are problems with the Z1 client mode connection at 5GHz.

update Aug 22, evening

I’m having some problems figuring out how to set up Windows 11 as a hotspot. Do you have Ethernet attached to the Windows 11 laptop and it is sharing the WiFi?

If there is a link to an article on how to set up Windows 11 as a hotspot, I can try and follow that to test the Z1.

Also, how do you lock the Windows 11 machine to only use 5GHz and not use 2.4GHz?

No I don’t have an Ethernet attached to my laptop. It’s connected to my office Wi-Fi and it’s sharing Wi-Fi in the hotspot.

It’s pretty easy I guess to set up a mobile hotspot on Windows 11.

You can directly search “hotspot” in the search bar.

You can then configure your mobile hotspot settings here and can even set it to whichever band you like to share your WiFi in.

Since my WiFi supports both 2.4GHz and 5GHz, I’ve tried connecting my phone to the 5GHz band hotspot and worked perfectly fine.

With this configuration, my Pixel 4a mobile phone is not getting an IP address or iPhone 12

image

what mobile phone (iPhone or Android) are you using to connect to the Windows 11 hotspot for the test?

There may be a problem with my office network.

Are you using two Wi-Fi adapters on your computer?

The Windows sharing only allows me to share my Ethernet.

I was using my iPhone 7 to connect to the hotspot and both connected easily.
I’m using only one - the laptops WiFi adapter.

Hi @craig
Any luck with making it work on 5 GHz using the hotspot?

I used a router this time to connect the camera. But I’m still encountering the same problem with Unity as described here (RTSP Streaming Plug-in - #88 by syedjawadakhtar) - Beeping sound.

EDIT:
Even THETA V is making the same sound error while connecting to the Unity after few seconds. I’m doubting it has to do something with the Unity but I suspect changing anything in it.

I’m still having problems setting up my Windows 11 laptop as a hotspot. I’ll try again.

cap = cv2.VideoCapture(“rtsp://192.168.200.82:8554/live?resolution=640x320”)
not connecting on Ubuntu 18.04, the cap.isOpened() returns false. Any ideas why?
The camera is in rtsp plugin mode under the same network. Vlc can play it no problem.

Here is my python script that opens and shows the camera

import cv2
import time

# CONFIGURABLE CONSTS
LOG_INFO = True
#VIDEO_DEVICE_ID = 0
VIDEO_DEVICE_ID = "rtsp://192.168.200.82:8554/live?resolution=640x320"
# You can set the "resolution" to "640x320", "1024x512", "1920x960" or "3840x1920". "3840x1920" may not work because of bandwidth.

# set both values to 0 to skip setting resolution
#VIDEO_RES = [3840, 1920]
VIDEO_RES = [0, 0]

# set fps to 0 to skip setting fps
VIDEO_FPS_CAP = 30

# For webcam input:
cap = cv2.VideoCapture(VIDEO_DEVICE_ID)
if VIDEO_RES[0] > 0 and VIDEO_RES[1] > 0:
    print("setting res ...")
    if cap.set(cv2.CAP_PROP_FRAME_WIDTH, VIDEO_RES[0]) == False:
        print("could not set frame width")
    if cap.set(cv2.CAP_PROP_FRAME_HEIGHT, VIDEO_RES[1]) == False:
        print("could not set frame height")
        
if VIDEO_FPS_CAP > 0:
    print("setting fps")
    if cap.set(cv2.CAP_PROP_FPS, VIDEO_FPS_CAP) == False:
        print("could not set fps")
frame_rate = VIDEO_FPS_CAP
prev = 0

if cap.isOpened():
  print("starting ...")

while cap.isOpened():
  # cap the reading speed to camera's fps
  time_elapsed = time.time() - prev
  if VIDEO_FPS_CAP > 0 and time_elapsed <= 1./frame_rate:
      continue
  prev = time.time()
  
  success, image = cap.read()
  if not success:
    if LOG_INFO:
        print("Ignoring empty camera frame.")
    # If loading a video, use 'break' instead of 'continue'.
    continue
  
  cv2.imshow('Virtual Safari', image)

  # If we've waited at least 5 ms And we've pressed the Esc
  if cv2.waitKey(5) & 0xFF == 27:
    cv2.destroyWindow('Virtual Safari')
    break

print("quitting ...")
cap.release()

And this is the terminal output, it doesn’t even print “starting”, meaning the cap is never even opened

$ python3 VirtualSafari.py
setting fps
could not set fps
quitting …

Does the script work from a non-THETA webcam that is sending RTSP to device?

What camera and firmware version are you using?

I don’t have anything to test rtsp other than the ricoh. I tried gstreamer as well, won’t play either.
Latest firmware 2.30.1

does this work?

Change IP to the IP of your THETA Z1.

ffplay -fflags nobuffer -i rtsp://192.168.2.101:8554/live?resolution=1920x960

What gstreamer command are you using?

I used the gstreamer pipeline below (with a few variations, none worked)
gst-launch-1.0 rtspsrc location=rtsp://192.168.200.82:8554/live?resolution=1920x960 ! decodebin ! autovideosink

ffplay did not work either

[tcp @ 0x7fa650002e60] Connection to tcp://192.168.200.82:8554?timeout=0 failed: No route to host
rtsp://192.168.200.82:8554/live?resolution=1920x960: No route to host

Only VLC can miraculously decode this stream. Note there’s no way to show it as perspective projection, because the stream comes without the metadata that tells VLC it’s a 360 video.

Also, even on VLC, sometimes I get these errors

Connection failed:
VLC could not connect to “192.168.200.82:8554”.
Your input can’t be opened:
VLC is unable to open the MRL ‘rtsp://192.168.200.82:8554/live?resolution=1920x960’. Check the log for details.

The source code for the RTSP plugin is here:

Does the stream from other sources normally have metadata in it to tell VLC that the stream is a 360 stream?

Due to network security in my workplace office, I have difficulty testing applications with client mode. I’ll try again at my home office.

Have you considered opening an issue on the Science Arts GitHub repo for THETA-RTSP-plugin?