All Projects → jcrisp88 → flutter-webrtc_python-aiortc-opencv

jcrisp88 / flutter-webrtc_python-aiortc-opencv

Licence: other
Flutter WebRTC demo with Python server to perform image processing on video frames using OpenCV

Programming Languages

dart
5743 projects
javascript
184084 projects - #8 most used programming language
python
139335 projects - #7 most used programming language
HTML
75241 projects
swift
15916 projects
Dockerfile
14818 projects

Projects that are alternatives of or similar to flutter-webrtc python-aiortc-opencv

webrtc-hotwire-rails
A video chat app demonstration using Hotwire and Ruby on Rails
Stars: ✭ 38 (+11.76%)
Mutual labels:  webrtc-demos, webrtc-video
foxrtc
media sdk based on webrtc
Stars: ✭ 36 (+5.88%)
Mutual labels:  webrtc-demos, webrtc-video
video-chat
Simple Web Application that offer you to create video meeting room using WebRTC and Socket.
Stars: ✭ 32 (-5.88%)
Mutual labels:  webrtc-demos, webrtc-video
demo-rails-webrtc
A demo project shows how to use webrtc on rails
Stars: ✭ 28 (-17.65%)
Mutual labels:  webrtc-demos, webrtc-video
Interactive-Add-Button-Layout
Custom Layout with interactive add button to impove your UI and UX .
Stars: ✭ 20 (-41.18%)
Mutual labels:  flutter-demo
opencv-python-inference-engine
Wrapper package for OpenCV with Inference Engine python bindings.
Stars: ✭ 32 (-5.88%)
Mutual labels:  opencv-python
Realtime-OpenCV-Chess
♔ Chess-playing with Open-CV [Human vs AI (Stockfish engine)]
Stars: ✭ 18 (-47.06%)
Mutual labels:  opencv-python
BlurryFaces
A tool to blur faces or other regions in images and videos 🤡🔍
Stars: ✭ 58 (+70.59%)
Mutual labels:  opencv-python
Pixel-Processing
📷 This repository is focused on having various feature implementation of OpenCV in Python. The aim is to have a minimal implementation of all OpenCV features together, under one roof.
Stars: ✭ 122 (+258.82%)
Mutual labels:  opencv-python
flutter verification code input
Verify code input. You can create a verify code input.
Stars: ✭ 48 (+41.18%)
Mutual labels:  flutter-demo
DJITelloOpticalControl
Autonomous navigation and data collection for Tello using mainly OpenCV's ArUco libraries.
Stars: ✭ 24 (-29.41%)
Mutual labels:  opencv-python
stuff
Crud operation with Firebase
Stars: ✭ 80 (+135.29%)
Mutual labels:  flutter-demo
Insta flters with python
With this program you can add hat & glass on your face(it's support multiple faces)
Stars: ✭ 21 (-38.24%)
Mutual labels:  opencv-python
UAV-Stereo-Vision
A program for controlling a micro-UAV for obstacle detection and collision avoidance using disparity mapping
Stars: ✭ 30 (-11.76%)
Mutual labels:  opencv-python
flutter kart
Sample flutter project based on udmey tutorial
Stars: ✭ 178 (+423.53%)
Mutual labels:  flutter-demo
WebRtc noise suppression
This is WebRtc noise suppression module demo.
Stars: ✭ 70 (+105.88%)
Mutual labels:  webrtc-demos
swipedetector
A Flutter package to detect up, down, left, right swipes.
Stars: ✭ 34 (+0%)
Mutual labels:  flutter-demo
Fleo-flutter-video-amalgamation
Fleo - A video calling application developed using flutter🤠
Stars: ✭ 40 (+17.65%)
Mutual labels:  webrtc-video
FlutterMarvelHeroesLibrary
The simple concept for Marvel universe fans made in Flutter. Everything about favourite characters in one app.
Stars: ✭ 18 (-47.06%)
Mutual labels:  flutter-demo
dating-app-concept-flutter
Dating App UI concept made to showcase Flutter in SheCodes hackathon
Stars: ✭ 53 (+55.88%)
Mutual labels:  flutter-demo

flutter + webrtc => python + aiortc + opencv

This demo project should help you to get setup sending a video feed from a flutter app to a python backend to allow you to then perform some image processing on the video frames using OpenCV.

Running the server

First install the required packages:

$ cd server

$ pip install -r requirements.txt

When you start the example, it will create an HTTP server which you can connect to from your browser:

$ cd server

$ python main.py

You can then browse to the following page with your browser:

http://localhost:8080

Once you click Start the browser will send the audio and video from its webcam to the server.

The server will play a pre-recorded audio clip and send the received video back to the browser, optionally applying a transform to it.

In parallel to media streams, the browser sends a 'ping' message over the data channel, and the server replies with 'pong'.

![Server index page](server_index.gif)

Additional options

If you want to enable verbose logging, run:

$ cd server

$ python server.py -v

Running the server in docker

If you have docker setup, run:

$ cd server

$ docker build -t aiortc_server .

$ docker run -p 8080:8080 -it --rm aiortc_server

You can then browse to the following page with your browser:

http://localhost:8080

Setting up flutter

First install the required packages.

Now you will need to update the /offer path to point to your local python server.

![Flutter Demo](flutter_demo.gif)

Credits

The server files were borrowed from the aiortc github project.

https://github.com/aiortc/aiortc

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].