RTSP Streaming Plug-in

Do you have access to a Mac or Linux machine?

I’ve had problems viewing the RTSP stream on Windows 10 with both VLC and other software.

If you can get it working on one platform, you can then try and isolate the problem on another platform.

The source code for the plug-in is also available if you want to try and fix it.

No I can not work on Linux or Mac machine.
My colleague works on Windows 10 and it works on her machine so, I don’t understand where is the problem. Plus the first time I tried to stream it worked, I really don’t understand why the stream why doesn’t work anymore now.
Plus, what is the code for this plug-in ?

One version of the code is below. This fork of the ScienceArts original code has some additional documentation on the README and you can check the original ScienceArts repo.

https://github.com/codetricity/THETA-RTSP-plugin

The code works on Z1 too. ScienceArts updated the plug-in so that it works on Z1 in addition to V.

I’ve had similar experiences on Windows 10 as you and your colleague. Sometimes it works and sometimes it didn’t. I was not able to trace the problem. You can see in the README that I wrote that I was not able to get it to work reliably on Windows as of Dec 2020.

I also tried Go Pro VR Player. I was able to use it with 360 navigation on MacOS, but not on Windows 10.

I was able to use Pot Player sometimes on Windows 10, but not other times.

The may be a setting on Windows to increase stability, but I have not found anything.

If you solve the problem, please post your tests.

Also, my Windows 10 HDD has a problem and I need to reinstall Windows 10, so I am having some problems testing Windows 10 applications at the moment.

I purchased a new 2 TB SSD from Amazon.com, but I have not reinstalled Windows 10 yet.

1 Like

Just to clarify that the plug-in in the store now works with Z1 with firmware 1.60.1

image

This may not solve the problem with some Windows 10 configurations. Please post additional test results.

Source code from the Science Arts repository is here:

GREAT plugin!
Many thanks to @science-arts for the Ricoh Theta Z1 support!

For a quick test the RTSP-live stream view I would suggest the ffmpeg/ffplay:

ffplay -fflags nobuffer -i rtsp://<ip_address>:8554/live?resolution=1920x960

The delay is approx. 0.65 second (see photo).

The ffplay shows also details of the stream:
Input #0, rtsp, from 'rtsp://IP:8554/live?resolution=1920x960': Metadata: title : RICOH THETA live cast comment : RICOH THETA live cast Duration: N/A, start: 0.266667, bitrate: N/A
Stream #0:0: Video: h264 (Constrained Baseline), yuv420p(tv, smpte170m/bt470bg/smpte170m, progressive), 1920x960, 30 fps, 30 tbr, 90k tbn, 180k tbc

Connections details:
Ricoh Theta Z1 - WiFi 2.4GHz, distance to AP ~20 meters.
Windows 10 (1803) laptop (MSI GT73VR): LAN, Gigabit ethernet.
When both (Z1 & PC) are connected via WiFi the delay increases.

2 Likes

Thank you for posting this good, detailed, information on your test.

Thank you especially for showing the use of -fflags nobuffer. that may resolve some of the problems.

I’m going to test this in Windows 10 after I reinstall my OS.

I just tested the parameters you posted on Ubuntu 20.04 and it works great.

$ ffplay -version
ffplay version 4.2.4-1ubuntu0.1 Copyright (c) 2003-2020 the FFmpeg developers
built with gcc 9 (Ubuntu 9.3.0-10ubuntu2)

I wonder if there is a way to disable buffering on Pot Player on Windows 10? It has nice 360 navigation of the stream.

Just to share info, I’m getting some frame degradation at 4K on my network with ffplay. It still works, but the 2K stream is clearer.

1 Like

Hi all,

I’ve just installed the Theta RTSP Streaming Plugin on my Z1 and pushed the stream through to VLC. I see it only displays in equirectangular format? How can I get it to 360 mode or is this not possible in VLC. If not possible what other streaming services can I use with this plugin for live streaming to display in 360 mode. Ideally I’m looking to use Youtube or Facebook. I look forward to your comments.

P.S Been testing Ricoh’s “Wireless Live streaming plugin” and it gets very hot. The above plugin gives me more hope

YouTube and Facebook use RTMP. You will need to use the Wireless Live Streaming plug-in for RTMP. did you upgrade the Z1 to 1.60.1 firmware?

If you want to use RTSP direct to another computer, use Pot Player on Windows or GoPro VR Player Desktop.

http://theta360developers.github.io/community-document/live-streaming.html#_wi_fi_rtsp_streaming_direct_to_computer

Live stream video output to desktop will look like this:

navigation

Feel free to post more questions.

Hi Craig,

Yes I’m all updated to 1.60.1…the Theta RTSP Streaming Plugin seems like the better choice as the “Wireless Live Streaming plugin” causes my Z1 to get very hot and I can only do about 10min. With heat sinks on I can do 30min…

With the Theta RTSP plugin started I connected the Z1 to LAN and used OBS to setup my youtube stream. It seems to be working alot better and camera not getting hot at all…

I’ll checkout above Players as suggested.

Thx so much for your help!

1 Like

Craig,

Do you know if it’s possible to connect camera to a mobile wifi router ? For some reason I can only connect to Home Router. It keeps telling me “Check your wifi settings” when I try to connect to mobile router. Not sure what Im doing wrong as Im following the exact same steps in terms of setting up my access point first…

I believe it’s possible, but I have not tried it.

We may be able to recruit @jcasman to help test the RTSP plug-in with a mobile phone as a hotspot.

Hi Craig, great idea ! I look forward to getting the feedback as my main aim is to do online live streaming when I’m out and about instead of indoors…

works from my mobile phone, Android Pixel 2. My mobile phone is a hotspot router. I’m not using my mobile phone to view the stream.

mobile_data

The phone assigned the THETA Z1 an IP address of 192.168.61.41 using the “Wi-Fi Hotspot” feature of Android. The traffic is going locally between my camera and the workstation running ffplay. I do not think it is using mobile data except for the Internet access from my workstation to the Internet.

Test 2 - All Mobile Data Access to Camera and Internet at the Same Time

Playing YouTube Video on workstation using mobile data while viewing live stream from Z1.

I have mobile access from my workstation to the Internet using the hotspot and can also access the 360 live stream using my mobile phone as the Wi-Fi router at the same time.

Hi Craig,
I’m trying to capture the Theta V and convert it to ROS images but it is not always work.
I wrote a cv app using Python to received the stream from Theta and it worked at 4.1.1 but not in 3.2.0. I researched a bit and turn out is openCV 3.2 doesn’t support UDP transport which RTSP plugin used.
Could you give me some advise about this issue?

Is it not possible to get your application to work with OpenCV 4.1.1?

You can try the following:

  • Connect the THETA V to a Linux computer with a USB cable and run OpenCV on the Linux computer RICOH THETA360.guide Independent developer community
  • retransmit the stream into another format that OpenCV 3.2 can accept. See this article for information on retransmission from the RTSP plug-in. What format does it need?
  • Use something like MotionJPEG using the THETA livePreview feature to get the JPEG frames to OpenCV

Note that I’m not familiar with OpenCV and I’m not sure what format you need.

What’s the slowest acceptable rate to get the frames and what’s the lowest resolution acceptable?

I believe the V can do 1024x512 at 30fps or 1920x960 at 8fps for MotionJPEG straight from livePreview.

It’s better if you stream it directly to your application with a USB cable, but maybe you’re stuck and you can’t upgrade your app to a newer OpenCV?

I ran this this test with OpenCV 4.4 at 4K 30fps and it was no program to get working.

Dear Craig,

Thank you for your reply. In fact I tried the wired method and it worked very well. And the Wireless version is my next step in the Theta Streaming in ROS app.

For the re-transmitting the stream and get JPEG from THETA livePreview, That is new for me and I will get it a try. Although 1920x960 only offering 8 fps MotionJPEG using is a bit awful.

I expect that I can get the stream around 1920x960 at 30fps and the stream from RTSP plugin played in VLC is fine for my except the 2s latency. OpenCV works fine for lower the latency but it only accept TCP as transporting protocol of RTSP.

The reason for not using CV 4 is that it will conflict with other app in ROS system and I have to avoid to use it. I am still looking for the solution for this.

I’m not sure of your example implementation, but if you’re trying to get RTSP to another computer and the plug-in can’t be used, have you seen Zack’s solution in this forum and on the document about streaming from a Jetson nano to another computer by changing the pipeline in gst_viewer.c

Note that he’s receiving the stream on ROS with GSCAM. Maybe this is what you want? You can search this forum for zdydek posts and you can find the discussion. If you can’t find it, I can search and post the direct link if this is what you are looking for.

Also, the source code for the RTSP plug-in is available in this discussion thread. You can scroll up.

Hi! I am working on creating a real-time environment for a drone flight using Ricoh 360 Camera on any VR headset. Can you help me if Ricoh SC2 attached on the drone can live stream on VR Headset from a very far distance obviously?

The SC2 can’t use plug-ins. You need to use the technique below.

Unless you already have the SC2, it’s better if you try and get a used V.

The video below covers how to use the Amelia Viewer with an SC2.

1 Like

I recently tested the RTSP plugin on a ricoh theta v after the latest firmware 3.60.1. The RTSP plugin no longer functions, Also streaming using ethernet cable is not working. At this point there are not many options to stream with low latency. Any suggestions or solution on how to fix this or how to downgrade to the previous firmware which was working fine ?