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

Add support for streaming video #22

Open
fnoop opened this issue May 14, 2017 · 14 comments
Open

Add support for streaming video #22

fnoop opened this issue May 14, 2017 · 14 comments

Comments

@fnoop
Copy link
Member

fnoop commented May 14, 2017

This would make an awesome FPV HUD if the map display was replaced by streaming video feed :)

@SamuelDudley SamuelDudley self-assigned this May 14, 2017
@SamuelDudley
Copy link
Member

SamuelDudley commented May 14, 2017

advckpt01
My plan is to have an optional section that can be overlaid with FPV video. See the top middle screen in the attached image as an example. Is that sort of what you were thinking?

@fnoop
Copy link
Member Author

fnoop commented May 14, 2017

Yes that's a nice idea. It would also be good to be able to replace the map display entirely with fpv, or at least a significant overlay. I'm thinking of mavcesium being served by a companion computer on a drone in the field, where it will rarely have internet access to download the tiles, and the realtime video would be more preferable to the rendered tiles.

@SamuelDudley
Copy link
Member

I can put together​ a WIP to test this functionality. Do you think supporting live video from a gstreamer stream would be okay?

@fnoop
Copy link
Member Author

fnoop commented May 17, 2017

Absolutely :)

@see3peoh
Copy link

This i have to try! That's an incredible idea. When the wip is avail I'm on board! Everything you've shown lately has been awesome!

@tdrone993
Copy link

That would be great! I've modified mine a bit to have Nexrad Overlays, GPS Ground units (SAR) and 911 data even! Video integration would be great!

@SamuelDudley
Copy link
Member

Sorry, I have been struggling with getting any free time to work on this recently... Hopefully this will change soon and let me take on a coupe of these features! This one is high on the TODO list.

@SamuelDudley
Copy link
Member

Any thoughts on a low latency gstreamer to html5 pipeline? I have tried the following:

gst-launch-1.0 v4l2src device=/dev/video0 ! videoconvert ! videoscale ! video/x-raw,width=320,height=240 ! theoraenc ! oggmux ! tcpserversink host=127.0.0.1 port=8080

and

<!DOCTYPE html>
<html>
        <head>
                <meta http-equiv="content-type" content="text/html; charset=utf-8">
                <title>gst-stream</title>
        </head>
        <body>
                <video width=320 height=240 autoplay>
                        <source src="http://127.0.0.1:8080">
                </video>
        </body>
</html>

In my testing the above gives about 2 seconds of delay between my webcam and the rendered video. Any thoughts on reducing that delay would be greatly appreciated!
Cheers,
Sam

@tdrone993
Copy link

tdrone993 commented Oct 17, 2017

I looked into trying to sync the position and video maybe mjpg (supposedly it has timestamps embedded from the short research I quick looked into). ez-wifibroadcast has about 150ms range might see how they are tweaking some of the RPI camera settings.

@poliant
Copy link

poliant commented Oct 23, 2017

why not overlaying directly on the video using picamera python library?

@tdrone993
Copy link

@tdrone993
Copy link

@SamuelDudley
Copy link
Member

Thanks for the links! :) I really need to spend some time and work out how these solutions might be able to be integrated into the existing python server setup. I guess first cut would be to try the supplied server and client to see how it really performs.

Syncing the video and the data is another issue but if I could embed a timestamp in with the h264 data frames it might should be able to keep it in sync...

@SamuelDudley
Copy link
Member

related goodrobots/maverick#693

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants