OpenROV / openrov-software

Meta project for all of the OpenROV Software projects
http://openrov.com
Other
422 stars 188 forks source link

MJPEG stream not coming up on recent dev image #505

Open BrianAdams opened 8 years ago

BrianAdams commented 8 years ago

Reported by Jim:

Apr 28 20:51:40 openrov mjpg_streamer[9699]: MJPG-streamer [9699]: starting application
Apr 28 20:51:40 openrov mjpg_streamer[9699]: MJPG-streamer [9699]: MJPG Streamer Version: svn rev:
Apr 28 20:51:40 openrov mjpg_streamer[9699]: MJPG-streamer [9699]: Using V4L2 device.: /dev/video0
Apr 28 20:51:40 openrov mjpg_streamer[9699]: MJPG-streamer [9699]: Desired Resolution: 1920 x 1080
Apr 28 20:51:40 openrov mjpg_streamer[9699]: MJPG-streamer [9699]: Frames Per Second.: 30
Apr 28 20:51:40 openrov mjpg_streamer[9699]: MJPG-streamer [9699]: Format............: MJPEG
Apr 28 20:51:40 openrov mjpg_streamer[9699]: MJPG-streamer [9699]: init_VideoIn failed
BrianAdams commented 8 years ago

Changing Kernel again fixed any issues I happened to see. Still have to finish cleanup on the Tahoe refactor to upgrade the MJPEG server to match the new announcement api.

spiderkeys commented 8 years ago

MJPEG plugin also had a mistake where the video-registration event was being emitted on deps.rov instead of deps.globalEventLoop when run with an actual camera. Being fixed in branch: https://github.com/OpenROV/openrov-cockpit/tree/refactor_controller

BrianAdams commented 8 years ago

Latest version seems to be trying to use " Transfer Type Isochronous" instead of bulk. Too much video causes the entire camera to freeze up.

BrianAdams commented 8 years ago

Hey @jtrezzo here is where I am tracking the MJPEG issues on the DevImage

BrianAdams commented 8 years ago

So the earlier versions that work are also using isoc. So this looks like another Kernel version issue :-(

BrianAdams commented 8 years ago

K. We changed some defaults to move the camera to 1080p@30, if you have too large a JPEG image, the USB is not keeping up using ISOC. Dialing back to 720p@30 seems to work fine. A different side affect of the MJPEG format is that nginx is running about 35% CPU, presumably encrypting the outbound stream.

spiderkeys commented 8 years ago

This issue is now resolved by the new MJPEG video plugin that @codewithpassion has put together.

BrianAdams commented 8 years ago

The nginx issue is fixed. The underlying issue with the Genius camera throwing too many interrupts is still open.