GithubHelp home page GithubHelp logo

miroslavpejic85 / mirotalk Goto Github PK

View Code? Open in Web Editor NEW
2.5K 43.0 490.0 38.99 MB

๐Ÿš€ WebRTC - P2P - Simple, Secure, Fast Real-Time Video Conferences Up to 4k and 60fps, compatible with all browsers and platforms.

Home Page: https://p2p.mirotalk.com

License: GNU Affero General Public License v3.0

JavaScript 60.97% HTML 24.08% CSS 13.44% Dockerfile 0.04% PHP 0.46% Python 0.34% Shell 0.56% Makefile 0.11%
webrtc video-call video-chat video-conferencing webrtc-call webrtc-video screensharing meeting conferencing conference p2p streaming decentralized html-css-javascript javascript mirotalk whiteboard sharing peer-to-peer hacktoberfest

mirotalk's Introduction

MiroTalk P2P


Free WebRTC - P2P - Simple, Secure, Fast Real-Time Video Conferences with support for up to 4k resolution and 60fps. It's compatible with all major browsers and platforms.


Explore MiroTalk P2P



Join our community for questions, discussions, and support on Discord


Features
  • Is 100% Free - Open Source under (AGPLv3) - Self Hosted and PWA!
  • No downloads, plugins, or logins required โ€“ completely browser-based.
  • Unlimited conference rooms with no time limitations.
  • Translated into 133 languages.
  • Host protection to prevent unauthorized access.
  • User auth to prevent unauthorized access.
  • Room password protection.
  • JWT.io securely manages credentials for host configurations and user authentication, enhancing security and streamlining processes.
  • Compatible with desktop and mobile devices.
  • Optimized mobile room URL sharing.
  • Webcam streaming with front and rear camera support for mobile devices.
  • Crystal-clear audio streaming with speaking detection and volume indicators.
  • Screen sharing for presentations.
  • File sharing with drag-and-drop support.
  • Choose your audio input, output, and video source.
  • Supports video quality up to 4K and 60 FPS.
  • Supports advance Picture-in-Picture (PiP) offering a more streamlined and flexible viewing experience.
  • Record your screen, audio, and video.
  • Snapshot video frames and save them as PNG images.
  • Chat with an Emoji Picker for expressing feelings, private messages, Markdown support, and conversation saving.
  • ChatGPT (powered by OpenAI) for answering questions, providing information, and connecting users to relevant resources.
  • Speech recognition for sending spoken messages.
  • Push-to-talk functionality, similar to a walkie-talkie.
  • Advanced collaborative whiteboard for teachers.
  • Real-time sharing of YouTube embed videos, video files (MP4, WebM, OGG), and audio files (MP3).
  • Full-screen mode with one-click video element zooming and pin/unpin.
  • Customizable UI themes.
  • Right-click options on video elements for additional controls.
  • Direct peer-to-peer connections for low-latency communication through WebRTC.
  • Supports REST API (Application Programming Interface).
  • Integration with Slack for enhanced communication.
  • Utilizes Sentry for error reporting.
  • And much more...
About
Start videoconference
  1. Open MiroTalk P2P or alternative link.
  2. Choose a room name and click Join Room.
  3. Grant camera and microphone access.
  4. Share the room URL and wait for participants to join the video conference.
Direct Join

Note

The token parameter are optional when either HOST_PROTECTED or HOST_USER_AUTH is set to true in the .env file. The valid list of users is defined in the HOST_USERS configuration.

Host Protection Configuration

When host protection or host user auth is enabled, the host/users must provide a valid username and password as specified in the .env file.

Params Value Description
HOST_PROTECTED true if protection is enabled, false if not (default false) Requires the host to provide a valid username and password during room initialization.
HOST_USER_AUTH true if user authentication is required, false if not (default false). Determines whether host authentication is required.
HOST_USERS JSON array with user objects: {"username": "username", "password": "password"} List of valid host users with their credentials.
Embed a meeting

To embed a meeting in your service or app using an iframe, use the following code:

<iframe
    allow="camera; microphone; display-capture; fullscreen; clipboard-read; clipboard-write; autoplay"
    src="https://p2p.mirotalk.com/newcall"
    style="height: 100vh; width: 100vw; border: 0px;"
></iframe>
Quick start
  • Before running MiroTalk P2P, ensure you have Node.js installed. This project has been tested with Node versions 12.X, 14.X, 16.X and 18.x.
# clone this repo
$ git clone https://github.com/miroslavpejic85/mirotalk.git
# go to mirotalk dir
$ cd mirotalk
# copy .env.template to .env (edit it according to your needs)
$ cp .env.template .env
# install dependencies
$ npm install
# start the server
$ npm start
Docker

docker

# copy .env.template to .env (edit it according to your needs)
$ cp .env.template .env
# Copy docker-compose.template.yml in docker-compose.yml (edit it according to your needs)
$ cp docker-compose.template.yml docker-compose.yml
# Get official image from Docker Hub
$ docker pull mirotalk/p2p:latest
# create and start containers
$ docker-compose up # -d
# to stop and remove resources
$ docker-compose down
Documentations
# The response will give you the active meetings (default disabled).
$ curl -X GET "http://localhost:3000/api/v1/meetings" -H "authorization: mirotalksfu_default_secret" -H "Content-Type: application/json"
$ curl -X GET "https://p2p.mirotalk.com/api/v1/meetings" -H "authorization: mirotalksfu_default_secret" -H "Content-Type: application/json"
$ curl -X GET "mirotalk.up.railway.app/api/v1/meetings" -H "authorization: mirotalksfu_default_secret" -H "Content-Type: application/json"
# The response will give you a entrypoint / Room URL for your meeting.
$ curl -X POST "http://localhost:3000/api/v1/meeting" -H "authorization: mirotalkp2p_default_secret" -H "Content-Type: application/json"
$ curl -X POST "https://p2p.mirotalk.com/api/v1/meeting" -H "authorization: mirotalkp2p_default_secret" -H "Content-Type: application/json"
$ curl -X POST "https://mirotalk.up.railway.app/api/v1/meeting" -H "authorization: mirotalkp2p_default_secret" -H "Content-Type: application/json"
# The response will give you a entrypoint / URL for the direct join to the meeting.
$ curl -X POST "http://localhost:3000/api/v1/join" -H "authorization: mirotalkp2p_default_secret" -H "Content-Type: application/json" --data '{"room":"test","name":"mirotalk","audio":"true","video":"true","screen":"false","hide":"false","notify":"true"}'
$ curl -X POST "https://p2p.mirotalk.com/api/v1/join" -H "authorization: mirotalkp2p_default_secret" -H "Content-Type: application/json" --data '{"room":"test","name":"mirotalk","audio":"true","video":"true","screen":"false","hide":"false","notify":"true"}'
$ curl -X POST "https://mirotalk.up.railway.app/api/v1/join" -H "authorization: mirotalkp2p_default_secret" -H "Content-Type: application/json" --data '{"room":"test","name":"mirotalk","audio":"true","video":"true","screen":"false","hide":"false","notify":"true"}'
# The response will give you an entry point/URL for direct joining to the meeting with a token.
$ curl -X POST "http://localhost:3000/api/v1/join" -H "authorization: mirotalkp2p_default_secret" -H "Content-Type: application/json" --data '{"room":"test","name":"mirotalk","audio":"true","video":"true","screen":"false","hide":"false","notify":"true","token":{"username":"username","password":"password","presenter":"true", "expire":"1h"}}'
$ curl -X POST "https://p2p.mirotalk.com/api/v1/join" -H "authorization: mirotalkp2p_default_secret" -H "Content-Type: application/json" --data '{"room":"test","name":"mirotalk","audio":"true","video":"true","screen":"false","hide":"false","notify":"true","token":{"username":"username","password":"password","presenter":"true", "expire":"1h"}}'
$ curl -X POST "https://mirotalk.up.railway.app/api/v1/join" -H "authorization: mirotalkp2p_default_secret" -H "Content-Type: application/json" --data '{"room":"test","name":"mirotalk","audio":"true","video":"true","screen":"false","hide":"false","notify":"true","token":{"username":"username","password":"password","presenter":"true", "expire":"1h"}}'
# The response will give you a valid token for a meeting.
$ curl -X POST "http://localhost:3000/api/v1/token" -H "authorization: mirotalkp2p_default_secret" -H "Content-Type: application/json" --data '{"username":"username","password":"password","presenter":"true", "expire":"1h"}'
$ curl -X POST "https://p2p.mirotalk.com/api/v1/token" -H "authorization: mirotalkp2p_default_secret" -H "Content-Type: application/json" --data '{"username":"username","password":"password","presenter":"true", "expire":"1h"}'
$ curl -X POST "https://mirotalk.up.railway.app/api/v1/join" -H "authorization: mirotalkp2p_default_secret" -H "Content-Type: application/json" --data '{"username":"username","password":"password","presenter":"true", "expire":"1h"}'
Hetzner & Contabo

Hetzner

This application is running for demonstration purposes on Hetzner, one of the best cloud providers and dedicated root servers.


Use my personal link to receive โ‚ฌโ 20 IN CLOUD CREDITS.


Contabo

Experience also top-tier German web hosting โ€“ dedicated servers, VPS, and web hosting at unbeatable prices. Reliable, secure, and backed by 24/7 support. Explore now here


To set up your own instance of MiroTalk P2P on a dedicated cloud server, please refer to our comprehensive self-hosting documentation. This guide will walk you through the process step by step, ensuring a smooth and successful deployment.

Live Demos

https://p2p.mirotalk.com

hetzner-qr


https://mirotalk.up.railway.app

railway-qr

Security

For Security concerning, please follow this documentation.

Credits
  • ianramzy (html template)
  • vasanthv (webrtc-logic)
  • fabric.js (whiteboard)
Contributing
  • Contributions are welcome and greatly appreciated!
  • Just run before npm run lint
License

AGPLv3

MiroTalk P2P is free and open-source under the terms of AGPLv3 (GNU Affero General Public License v3.0). Please respect the license conditions, In particular modifications need to be free as well and made available to the public. Get a quick overview of the license at Choose an open source license.

To obtain a MiroTalk P2P license with terms different from the AGPLv3, you can conveniently make your purchase on CodeCanyon. This allows you to tailor the licensing conditions to better suit your specific requirements.

Support the project

Do you find MiroTalk P2P indispensable for your needs? Join us in supporting this transformative project by becoming a backer or sponsor. By doing so, not only will your logo prominently feature here, but you'll also drive the growth and sustainability of MiroTalk P2P. Your support is vital in ensuring that this valuable platform continues to thrive and remain accessible for all. Make an impact โ€“ back MiroTalk P2P today and be part of this exciting journey!

BroadcastX Hetzner
LuvLounge QuestionPro
BrowserStack CrystalSound
Cloudron Kiquix
Advertisers

Contabo


Diving into Additional MiroTalk Projects:

MiroTalk SFU

Try also MiroTalk SFU selective forwarding unit real-time video conferences, optimized for large groups. Unlimited time, unlimited concurrent rooms each having 8+ participants, up to ~ 100 per single CPU.

MiroTalk C2C

Try also MiroTalk C2C peer to peer real-time video conferences, optimized for cam 2 cam. Unlimited time, unlimited concurrent rooms each having 2 participants.

MiroTalk BRO

Try also MiroTalk BRO Live broadcast (peer to peer) live video, audio and screen stream to all connected users (viewers). Unlimited time, unlimited concurrent rooms each having a broadcast and many viewers.

MiroTalk WEB

Try also MiroTalk WEB a platform that allows for the management of an unlimited number of users. Each user must register with their email, username, and password, after which they gain access to their personal dashboard. Within the dashboard, users can manage their rooms and schedule meetings using the desired version of MiroTalk on a specified date and time. Invitations to these meetings can be sent via email, shared through the web browser, or sent via SMS.


This project is tested with BrowserStack.


mirotalk's People

Contributors

anshumanfs avatar berkaycoban avatar bmanojlovic avatar chengyuhui avatar dillfrescott avatar endaquigley avatar jaideep25 avatar l4rm4nd avatar malay5 avatar miroslavpejic85 avatar mmguero avatar mohan43u avatar ni5arga avatar peratik avatar rudrathedev avatar tranchitella avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mirotalk's Issues

Mobile app

Can I connect from the mobile application (IOS, ANDROID ) to the browser room?

Unstablity if I connect with 6 users at the same time

can you please tell how to make a stable connection for more than 6 users. its disconnecting after sometime and remove peer reconnect with the stun or turn server. Is there any server requirement and other configuration that you can suggest me ?
Thanks in advance

Testing in windows 10 , chrome and firefox

i'm testing this application in WINDOWS 10 , and i got this error Cross-Origin Request in firefox browser and Failed to load resource: net::ERR_CERT_AUTHORITY_INVALID in Chrome browser so how can we fix it ? and thanks in advance
the first screen in firefox browser , the second screen in chrome browser
Capturefirefox
Capturechrome

ps i followed this documentation :

clone this repo

git clone https://github.com/miroslavpejic85/mirotalk.git

mirotalk dir

cd mirotalk

copy .env.template to .env

cp .env.template .env

install dependencies

npm install

start the server

npm start

Link view output

Hello, thanks for the amazing software

it would be interesting to have an output url for each suitable video so that you could use this project called vingester to convert to NDI, https://github.com/rse/vingester/
.
Individual video outputs will help with video integration with youtube for example, this output should not have camera and audio calls to avoid permission issues.

How do recordings work?

It's nice that there's a record button. It would be nicer if recorded videos could be accessed somehow. And it would be even nicer if information was provided about where such videos are stored, and whether they can be deleted.

Permission Denied

Even after allowing audio and video permission, it shows Permission denied, Maybe it is a problem on my side can you please help me email [email protected]

Convert

Hello dear friends,
I know this community is very responsive. This is very good things.

I want to convert this app into integrate my Cordova android application

Cordova client side running on node server
But
My Server is PHP MySQL

I want to manage that url meeting link or whatever but control by php server

Please anyone guide me roadmap
I don't have lots of time. 3 days full time.

My major problem is managing links and connected user

Cordova app already have WWW folder
Please help me.

Allow screensharing while recording

Curretnly we cannot switch between screen sharing and webcam during recordings. Once recording is started I cannot start or stop screensharing (pressing the screen sharing button has not effect). This feature is essential for recording a talk.

Screensharing and Raise hand

Hi @miroslavpejic85 !
As you had told I have made the issue, some modifications you can do as follows!

  • Could you please do something like, when you screenshare, and turn your video off, the screen share should still work, and the video shouldn't turn on, when you stop sharing.
  • And when you raise your hand the video should get highlighted, because, if someone's video's bg is green, and when they raise their hand, it won't be seen clearly.

Hoping you can add these in your code! Waiting for your reply!
Regards.

i love this mirotalk but there is some bugs

by luck i found this project and am very happy to find it
Now my plan is integrate to new stream php script with mysql but i found some bugs..idont no if you know about it
1-switch camera in mobile
not working with error and after searching i found this test link and i guess have same problem too
https://webrtc.github.io/samples/src/content/devices/input-output/
2- clear chat is deleted locally only not for all users (im not sure if bug or not )
3- anyone can kick anyone even the visitors allowed to kick out the owner of room (im not sure if bug or not )
4- max 6 to 8 per room ( i know is peer to peer connection ) but if you just make any guide about integrate SFU to make it more wider for many users ..i will glad to help in this

and finally ...your project is saved my time and i am very very happy to find it after long search.. i meet mediasoup and others projects but its takes long time to study and modifications....

in the end you help me and thank you very much Mr @miroslavpejic85
And everyone working on this amazing project.. โค๏ธโค๏ธโค๏ธ

Need Help

Hi, Please Help Me. I Am Facing A Problem That When I Downloaded The Mirotalk Zip File After Download I Have Extracted And Opening That Extracted File In Web Server 200 OK And Running It On Microsoft Edge When I Put A New Meeting URL Then It Is Showing File Does Not Exist... Please Help Me Or Give Me The Full Source Code Please...

Can't get secure SSL/TLS connection expose https

Made changes to server.js and client.js to expose https using letsencrypt certificate self hosting, instead of self signed certificate.

Can't connect with browser. Says cannot negotiate SSL/TLS.

And trying to connect to it from localhost mode from another computer on the same network doesn't ever allow access to microphone/video and doesn't continue into the room.

Install Error when I run npm install

root@cleanubuntu:~/mirotalk# npm install
npm WARN deprecated [email protected]: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.

> [email protected] postinstall /root/mirotalk/node_modules/ngrok
> node ./postinstall.js

internal/modules/cjs/loader.js:818
  throw err;
  ^

Error: Cannot find module '/root/mirotalk/node_modules/ngrok/postinstall.js'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:815:15)
    at Function.Module._load (internal/modules/cjs/loader.js:667:27)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:60:12)
    at internal/main/run_main_module.js:17:47 {
  code: 'MODULE_NOT_FOUND',
  requireStack: []
}
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] postinstall: `node ./postinstall.js`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] postinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2021-06-11T16_16_34_709Z-debug.log
root@cleanubuntu:~/mirotalk# mc

root@cleanubuntu:~/mirotalk# 

a doubt

On this site you could create something like Skype's NDI or have a solution that can capture participants and we were able to insert it into OBS Studio. It would be very good, because Zoom has not yet developed this feature :(

MCU - SFU architecture

Mirotalk not has a intermediate media server for audio - video communication, they are pure peer to peer connections between browsers, therefore it requires a good Bandwidth - CPU.

The current WebRTC Mesh architecture is not optimal for conferences with more than 6-8 users in the same room. The quality of the call is inversely proportional to the number of people on the call. The approximative users supported in a single room should be around 6-8 in an average high-speed connection.

The goal is to have a support media server and adapt the current architecture to MCU (MultiPoint Control Unit) or SFU (Selective Forwarding Unit). To have more users connected in the same room, consuming less bandwidth.

mirotalk-mesh

MCU - SFU architecture

Mirotalk has no a intermediate media server for audio - video communication, they are pure peer to peer connections between browsers, therefore it requires a good Bandwidth - CPU.

The current WebRTC Mesh architecture is not optimal for conferences with more than 6-8 users in the same room. The quality of the call is inversely proportional to the number of people on the call. The approximative users supported in a single room should be around 6-8 in an average high-speed connection.

The goal is to have a support media server and adapt the current architecture to MCU (MultiPoint Control Unit) or SFU (Selective Forwarding Unit). To have more users connected in the same room, consuming less bandwidth!

mirotalk-mesh

Any idea, best solution, contributions to reach this goal is very appreciated! โค๏ธ

Thank you so much to all those who believe in this project and who support me!

Upgrade to current version

I currently have MiroTalk installed an working, I am not certain of what version that I have installed. I backed up the Mirotalk directory and attempted to install the most current version and I received many errors. What is the location of the log file? Is there a simple way to upgrade to the current version without a reinstallation?

Screenshare audio

Hello! I'm not sure the requesting format or if its possible but is there a way to share the audio of the screen/tab?

Way of receiving message

Congratulations on the project, it is incredible...

But I think that when the message is received it shouldn't come as an input, if the person is going to reply, they need to delete the received message and then write again. I think it ruins the UX.

Sorry for the english. I used Google Translator

Error during docker install

I'm trying to install the docker version and I get this error. I'm trying to install it on my ubuntu VPS

Error log

ERROR: for mirotalk  Cannot start service mirotalk: OCI runtime create failed: container_linux.go:370: starting container process caused: process_linux.go:459: container init caused: rootfs_linux.go:59: mounting "/home/mirotalk/.env" to rootfs at "/var/lib/docker/overlay2/c63536f034d94903738c0cb154ea2609baa91a708baff8eb8ffa845536533142/merged/usr/src/app/.env" caused: not a directory: unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type

ERROR: for mirotalk  Cannot start service mirotalk: OCI runtime create failed: container_linux.go:370: starting container process caused: process_linux.go:459: container init caused: rootfs_linux.go:59: mounting "/home/mirotalk/.env" to rootfs at "/var/lib/docker/overlay2/c63536f034d94903738c0cb154ea2609baa91a708baff8eb8ffa845536533142/merged/usr/src/app/.env" caused: not a directory: unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type
ERROR: Encountered errors while bringing up the project.

steps

git clone https://github.com/miroslavpejic85/mirotalk
cd mirotalk

docker-compose up -d

Then image built happened successfully but when trying to deploy I get the error message above.

Socket.IO access url for client

Hello,

i install the app in a nodejs16 srv, but at the first try, i have ERR_CONNECTION_REFUSED for socket.IO url on client side : the port is not included in the url so that's why. Did i made a mistake ? i did not touch the original code.

thks

Improve meeting view

Mirotalk is a great platform for meeting but however the meeting room view is very simple please make it more attractive like zoom or Google meet

Privacy policy is missing

The demo server's website does not identify itself as a demo server, inviting the world to use this tool. Yet no mention is made of whether any (meta)data are retained, and if so what the sharing and retention policies are. A privacy policy would clarify for users whether the demo server can be relied upon, or whether self-hosting is preferable for privacy reasons.

Deploying in heroku

hello, i have a bit trouble when deploying it in heroku, how can i deploy it? do i need to
const myPeer = new Peer(undefined, {
host: '/',
port: '443'
})

Video Is Not Showing

When I Am Connecting to The Same internet The Video Is Showing But When I Used Two Different Connections The Other Users Video Is In black Colour Only And Not Showing...

Please Help Mee

Few problems

Hi Miroslav. thanks for nice work!
Just want to report few issues that I en counted. First is that on your demo website "https://mirotalk.up.railway.app/newcall" I wasn't able to connect even for one to one. Each persont can see and hear only themselves. Seems like signaling server issue. Here is a console log from Firefox:

WebRTC: ICE failed, your TURN server appears to be broken, see about:webrtc for more details
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at data:text/plain;base64,Cg==. (Reason: CORS request not http).
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://googleads.g.doubleclick.net/pagead/id. (Reason: CORS request did not succeed)

Tried with Google Chrome and errors are different but some result. I'm on Fedora 34 if it is matter.

And second thing is that I tried to install mirotalk on Oracle VM with Ubuntu 18.04 and got this:

root@shrisha:~/mirotalk# npm install
npm ERR! Linux 5.4.0-1052-oracle
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "install"
npm ERR! node v8.10.0
npm ERR! npm  v3.5.2
npm ERR! code EMISSINGARG

npm ERR! typeerror Error: Missing required argument #1
npm ERR! typeerror     at andLogAndFinish (/usr/share/npm/lib/fetch-package-metadata.js:31:3)
npm ERR! typeerror     at fetchPackageMetadata (/usr/share/npm/lib/fetch-package-metadata.js:51:22)
npm ERR! typeerror     at resolveWithNewModule (/usr/share/npm/lib/install/deps.js:456:12)
npm ERR! typeerror     at /usr/share/npm/lib/install/deps.js:457:7
npm ERR! typeerror     at /usr/share/npm/node_modules/iferr/index.js:13:50
npm ERR! typeerror     at /usr/share/npm/lib/fetch-package-metadata.js:37:12
npm ERR! typeerror     at addRequestedAndFinish (/usr/share/npm/lib/fetch-package-metadata.js:82:5)
npm ERR! typeerror     at returnAndAddMetadata (/usr/share/npm/lib/fetch-package-metadata.js:117:7)
npm ERR! typeerror     at pickVersionFromRegistryDocument (/usr/share/npm/lib/fetch-package-metadata.js:134:20)
npm ERR! typeerror     at /usr/share/npm/node_modules/iferr/index.js:13:50
npm ERR! typeerror This is an error with npm itself. Please report this error at:
npm ERR! typeerror     <http://github.com/npm/npm/issues>
WARN engine [email protected]: wanted: {"node":">=10"} (current: {"node":"8.10.0","npm":"3.5.2"})
WARN engine [email protected]: wanted: {"node":">=10.19.0"} (current: {"node":"8.10.0","npm":"3.5.2"})

npm ERR! Please include the following file with any support request:
npm ERR!     /home/ubuntu/mirotalk/npm-debug.log

Is npm is too old?

Thank you.

Error: port is undefined

Hi,

I run mirotalk behind a reverse proxy with docker-compose.
When I start a meeting, I don't have the video and the sound of the other participant.

In the console of browser, I have this error every 100 milliseconds ~ : Error: port is undefined.

What am I doing wrong ?

Stuck on Webpage Loading

I have tried this but it's stuck on the webpage of Loading Please allow the camera and microphone to use this app even though the permissions have already been granted.

Record entire meeting

Is this possible to record entire meeting? such as screen sharing, every attendees video cam etc.

request

[#ask, #request]
Hi, how to make accept or reject incoming calls while joining.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.