Build 30.0.3 mjpeg_streamer defaults giving inconsistent behaviour


#1

Hi guys,
This is such a great project and I’m having a lot of fun building up my first vehicle. While sorting out other parts I’m setting up the controls on the bench.

My current setup is;

  • BBB running 30.0.3 installed from image
  • Arduino 2560 connected on serial1 rather than serial0
  • Modified TP-Link AV200s
  • Logitec C525 720p webcam
  • 3 micro servos in place of ESCs to monitor the outputs

Everything is working well (albeit missing the additions from the controller board) but I had trouble with mpeg_streamer. It wouldn’t start until I added:
LD_LIBRARY_PATH=/usr/local/lib to my bashrc.

After starting with the options below:
mjpeg_streamer -i "input_uvc.so -f 30 -r 1280x720" -o "output_http.so -p 8090"

I can reliably connect with the cockpit or directly with the url http://192.168.254.1:8090/?action=stream

If I don’t manually start the stream I can sometimes connect but it is flaky and drops out. Iv’e also noticed that the resolution is different.

Two questions

  • Could you help me find where the server side settings are for mjpeg and how it gets kicked off when the client connects?
  • Was the env variable for the library path missing because I’ve missed an install script somewhere?

Cheers,
Shannon.


#2

In the 30.0.3 release, it gets spun up by the cockpit node process:

Were you using the default image we provide or did you install our software on an existing linux install?


#3

Thanks for the reply.

Everything was installed from the pre-canned BBB image.
It might have had something to do with where I was trying to run mjpg_streamer from. I can now see in OpenROVCamera.js that the path was explicitly set in the args. I was trying to run without, hence the environment variable questions.

var args = [
’-i’,
’/usr/local/lib/input_uvc.so -r ’ + options.resolution + ’ -f ’ + options.framerate,
’-o’,
’/usr/local/lib/output_http.so
];

As for the wider issue, it looks like the tether I was using was dropping a lot of packets so problems streaming were coming from there. It was quite happy at low bandwidth but the video pushed it too far. With a direct cable connection, no problems.

It’s a bit easier to troubleshoot now that I know my way around the code a little better. (and having any idea what to look for :wink:

Cheers,
Shannon.


#4

Hello guys,
I’ve testing a 2.8 with 30.0.3 and got everything working ok, except for the video stream in the Cockpit. It remains frozen, unless I hit F5 to refresh the page. Sometimes the illumination LEDs gets fired three to four times and CPU ramps up to near 80-90%
If I open a separate tab with 192.168.254.1:8090/?action=stream I can see the live feed from the USB camera without any problem.
I’ve been monitoring for any rogue process with top, and the most consuming is node.js with 25-30%, and mjpg_streamer process hits 10% or less.
Any insight on this issue?

Thanks for your time,
J. C.