go-flutter-desktop / go-flutter

Flutter on Windows, MacOS and Linux - based on Flutter Embedding, Go and GLFW.
https://hover.build/
BSD 3-Clause "New" or "Revised" License
5.84k stars 286 forks source link

plugins.flutter.io/camera #188

Open joeblew99 opened 5 years ago

joeblew99 commented 5 years ago

I want to work on Camera Plugin.

Can you advice on current roadblocks, so help me work out the work required.

Saw this but not sure. https://github.com/go-flutter-desktop/go-flutter/issues/134

Event Channel would be needed?
its getting close: https://github.com/go-flutter-desktop/go-flutter/pull/178

pchampio commented 4 years ago

Event Channel is about to be merged, some works still needs to be made on the flutter/engine side. What's missing is the texture API. Once the texture API is complete #102 , we will begin the development such plugins

pchampio commented 4 years ago

Progress on #102 has been made. The Texture api is in beta release (use hover run -b '@beta' to test it)

The texture_tutorial has been updated with a video example.

For a cross-platform webcam go library, https://github.com/hybridgroup/gocv is your best bet!

@joeblew99 if you want to start to work on the camera plugin, the texture tutorial with the video example is a great start!

joeblew99 commented 4 years ago

thanks @Drakirus fantastic support.

will try to get something working

truongsinh commented 4 years ago

Hi, is there any update to this?

pchampio commented 4 years ago

@joeblew99 hasn't reported back so I don't think he has made progress on this.

As for go-flutter-desktop maintainers, it's not manageable to implement all plugins by ourselves, we believe the community should help us when it comes to implementing plug-in.

If you are interested in continuing, please check the texture_tutorial (as it is very closed to this demand) our wiki and our plugins repo to found code-samples/documentation/guide on how to implement plugins in general. We are also available on our gitter.im, where you can ask questions.


Edit: I've update the texture_tutorial with a gif example (~80 loc). This is the best I can do for a tutorial, it's pretty clear what needs to be done on the go-flutter side to show a stream of images.

truongsinh commented 4 years ago

the example above is for displaying the content I think, is there any example of getting raw data from devices/hardware?

pchampio commented 4 years ago

In my above comment I referenced gocv

joeblew99 commented 4 years ago

Hey all

We are working on it along with @cloudwebrtc

It's working on Mac, iOS and Android. Getting it working on windows and Linux will require more cgo work.

It can also do s teen capture.

Almost working in flutter web

joeblew99 commented 4 years ago

Also check out the ion project !.this is the golang server side parts to allow video streaming and pub sub.

It's part of the webrtc pion project. Really awesome stuff

pchampio commented 4 years ago

Awesome, don't hesitate to submit a PR on https://github.com/go-flutter-desktop/plugins once you have something working!

truongsinh commented 4 years ago

@joeblew99 can I have a preview? Working on Mac is enough for me. I have a project using tflite_native for object detection, and is demonstrating how flutter and tflite can be truly cross-platform.