A voice assistant which can be used to interact with your computer and controls your pc operations

Overview

JARVIS

BolisettySujith BolisettySujith

BolisettySujith Contrinutors License

Introduction πŸ‘¨β€πŸ’»

It is a voice assistant which can be used to interact with your computer and also you have been seeing it in Iron man movies, but this JARVIS is not that much advanced as shown in movies.

Built with: PythonPython

  • Demo video for JARVIS is available here

Cool functionalities of JARVIS 😎 :)

I have wrote code which you can use JARVIS in the following ways :

  • It can tell count of Covid-19 cases for each state in India
  • It can do Screen Recording with voice recording stuff.
  • It can also do voice recording
  • It can access your mobile camera
  • It can access your web camera
  • It can find the location of a phone number
  • It can read pdf's
  • It can work as a telephone dictionary(Add contacts, search contacts)
  • It can generate qr codes for Links/anyText.
  • It can check/find your Internet speed
  • It can tell your IP address
  • It can tell the latest news
  • It can check the system condition
  • It can send gmails
  • It can send whatsapp messages to Individual & group chats
  • It can play youtube songs
  • It can download youtube songs
  • It can download instagram profiles
  • It can find/tell your current location where ever you are
  • It can take screenshots with a custom filename
  • It can tell current time
  • It can tell current day
  • It can tell random progrmamming jokes
  • It can also tell your schedule for each day
  • It can be silent for a certain number of time if we mention how much time we want it to be silent
  • It can search in wikipedia and tell about it in 5 lines
  • It can tell procedure/instructions how to make something(Eg:How to make a cake)
  • It can search for information in browser which we want
  • It can control system volumes
  • It can control system power activities(Eg: shutdown, restart, sleep)
  • It can play music file in a particular directory where the songs are present
  • It can open your social media and open-source accounts
  • It can open your college meeting accounts
  • It can open your OTT platforms accounts
  • It can open your all google apps
  • It can open presentation tools like canva, google slide
  • It can open shopping websites
  • It can open all the URL links
  • It can open/close all the pc applications(NOTE: give correct path based on your OS)
  • It can sleep until you say wake up
  • Finally It can interact with you and you can also add more commands if you want 😎

NOTE: Before running the code you must make sure you have all the modules installed in your python version(NOTE: python version can be >=3.6).

These are the following modules used in JARVIS πŸ“š :

SpeechRecognisation | PyAudio | pyttsx3 | pywhatkit | datetime | wikipedia | pyjokes | cv2 | cv2 tools | requests | smtplib | psutil | random | instaloader | PyAutoGUI | PyPDF2 | bs4 | PyQt5 | pywikihow | speed test | pytube | numpy | urllib | covid | phonenumbers | folium | opencage | pillow | Pywave | win32api | mscvrt

API keys πŸ”‘

To run this project you should need some API key's for reading news, for finding phone number location. Register for your API key by clicking the following

Note : supported OS : Windows, working on the making the JARVIS for Linux, but it many take some time.

Installation πŸ’»

  • You need to first fork this repository and clone the repository to your local system

    git clone https://github.com/ /J.A.R.V.I.S.git

  • Make sure to install all the required python modules mentioned above or you can simply install them by

    pip install -r requirements.txt

    Note: For any errors while installing the python modules refer ERRORS.md because I got some errors while installing and using them.

  • Add the correct system paths in JARVIS.py to open the system applications

  • Add your gmail id and password to send emails(line:797,798)

  • Make sure you have registerd in NewsAPI and replace the apiKey=YOUR_NEWS_API_KEY with your API key(Line: 852) and in Open cage and replace the API_key = "_OPEN_CAGE_GEOCODE_API_KEY_" with your API key(PhoneNumber.py(lineNo: 13))

  • For using mobile camera you need to first install an app in mobile called IP Webcam after installing go to START SERVER it will open your mobile camara at the bottom of the screen you can see IPv4 there you can find the IP address and replace _IP_Webcam_IP_address_ with the IP address in JARVIS.py MobileCamera function(line: 332)

  • Add the correct system paths to gifs or for background images in JarvisUi.py and JARVIS.py. If you got any elements missing(RED SCREEN) refer ERRORS.md file.

  • Finally run the python JARVIS.py file

That's it #Enjoy speaking with your computer friend 😁

Demo video for JARVIS is available here

FINAL GUI of JARVIS 😎

JARVIS

Note: For any errors while installing the python modules refer ERRORS.md because I got some errors while installing and using them.

Motivation for this project πŸ™ƒ

Due to covid19 in my house I'm in a seperate room, without talking with anyone, so thought to talk with my laptop which I will use everyday, and came up with this project.

How to Contribute πŸ€”

To contribute to this project you can FORK && clone 🍴 the project as mentioned in Installation, You can contribute on the following:

  • Add Interation commands
    • If you want to add Interation commands you need to add atleast 5 interation commands.
  • Update current GUI
    • Feel free to change the GUI if u have any new design ideas.
  • Add more feature
    • There are many things that we can do with python. So I'm very happy to accept any such type of features.
  • Make the Project OS independent
    • At present this project is supported to windows only, so we want to make it OS independent(Linux)
  • Add your name in the Contributors.md file.

Finally, make a PR ✍ on the features you are adding, also If u are changing any GUI I would recommend you to attach any Screenshots/Video regarding that changes, it would be very helpful to me while reviewing.

Future plans πŸ˜‡

In the present JARVIS GUI we cannot see the commands running but they are visible on the terminal, so plan to bring up the commands to display on the GUI.

If you like the repository FORK && clone 🍴 the repository, start using JARVIS, and don't forget to ⭐ the repository.

Gammatone-based spectrograms, using gammatone filterbanks or Fourier transform weightings.

Gammatone Filterbank Toolkit Utilities for analysing sound using perceptual models of human hearing. Jason Heeris, 2013 Summary This is a port of Malc

Jason Heeris 188 Dec 14, 2022
A python program to cut longer MP3 files (i.e. recordings of several songs) into the individual tracks.

I'm writing a python script to cut longer MP3 files (i.e. recordings of several songs) into the individual tracks called ReCut. So far there are two

DΓΆnerspiess 1 Oct 27, 2021
Deep learning transformer model that generates unique music sequences.

music-ai Deep learning transformer model that generates unique music sequences. Abstract In 2017, a new state-of-the-art was published for natural lan

xacer 6 Nov 19, 2022
Synthesia but open source, made in python and free

PyPiano Synthesia but open source, made in python and free Requirements are in requirements.txt If you struggle with installation of pyaudio, run : pi

DaCapo 11 Nov 06, 2022
Music generation using ml / dl

Data analysis Document here the project: deep_music Description: Project Description Data Source: Type of analysis: Please document the project the be

0 Jul 03, 2022
Telegram Voice-Chat Bot Written In Python Using Pyrogram.

Telegram Voice-Chat Bot Telegram Voice-Chat Bot To Play Music From Various Sources In Your Group Support All linux based os. Windows Mac Diagram Requi

TheHamkerCat 314 Dec 29, 2022
Python game programming in Jupyter notebooks.

Jupylet Jupylet is a Python library for programming 2D and 3D games, graphics, music and sound synthesizers, interactively in a Jupyter notebook. It i

Nir Aides 178 Dec 09, 2022
TONet: Tone-Octave Network for Singing Melody Extraction from Polyphonic Music

TONet Introduction The official implementation of "TONet: Tone-Octave Network for Singing Melody Extraction from Polyphonic Music", in ICASSP 2022 We

Knut(Ke) Chen 29 Dec 01, 2022
Music bot of # Owner

Pokimane-Music Music bot of # Owner How To Host The easiest way to deploy this Bot Support Channel :- TeamDlt Support Group :- TeamDlt Please fork thi

5 Dec 23, 2022
AudioDVP:Photorealistic Audio-driven Video Portraits

AudioDVP This is the official implementation of Photorealistic Audio-driven Video Portraits. Major Requirements Ubuntu = 18.04 PyTorch = 1.2 GCC =

232 Jan 03, 2023
Tune in is a Collaborative Music Playing Systems where multiple guests can join a room and enjoy the song being played

✨A collaborative music playing systems🎢 where multiple guests can join a room ➑πŸšͺ and enjoy the song🎧 being played.

Vedansh Vijaywargiya 8 Nov 05, 2022
Audio features extraction

Yaafe Yet Another Audio Feature Extractor Build status Branch master : Branch dev : Anaconda : Install Conda Yaafe can be easily install with conda. T

Yaafe 231 Dec 26, 2022
Marsyas - Music Analysis, Retrieval and Synthesis for Audio Signals

Welcome to MARSYAS. MARSYAS is a software framework for rapid prototyping of audio applications, with flexibility and extensibility as primary concer

Marsyas Developers Group 364 Oct 31, 2022
ianZiPu is a way to write notation for Guqin (叀琴) music.

PyBetween Wrapper for Between - λΉ„νŠΈμœˆμ„ μœ„ν•œ 파이썬 라이브러리 Legal Disclaimer 였직 ꡐ윑적 λͺ©μ μœΌλ‘œλ§Œ μ‚¬μš©ν• μˆ˜ 있으며, λΉ„νŠΈμœˆμ€ VCNC의 μžμ‚°μž…λ‹ˆλ‹€. μ•…μ˜μ  곡격에 μ΄μš©ν• μ‹œ 처벌 λ°›μ„μˆ˜ μžˆμŠ΅λ‹ˆλ‹€. μ‚¬μš©μ— λ”°λ₯Έ μ±…μž„μ€ μ‚¬μš©μžκ°€

Nancy Yi Liang 8 Nov 25, 2022
Musillow is a music recommender app that finds songs similar to your favourites.

MUSILLOW The music recommender app Check it out now!!! View Demo Β· Report Bug Β· Request Feature About The App Musillow is a music recommender app that

3 Feb 03, 2022
XA Music Player - Telegram Music Bot

XA Music Player Requirements πŸ“ FFmpeg (Latest) NodeJS nodesource.com (NodeJS 17+) Python (3.10+) PyTgCalls (Lastest) MongoDB (3.12.1) 2nd Telegram Ac

RexAshh 3 Jun 30, 2022
Read music meta data and length of MP3, OGG, OPUS, MP4, M4A, FLAC, WMA and Wave files with python 2 or 3

tinytag tinytag is a library for reading music meta data of MP3, OGG, OPUS, MP4, M4A, FLAC, WMA and Wave files with python Install pip install tinytag

Tom Wallroth 577 Dec 26, 2022
Supysonic is a Python implementation of the Subsonic server API.

Supysonic Supysonic is a Python implementation of the Subsonic server API. Current supported features are: browsing (by folders or tags) streaming of

Alban 228 Nov 19, 2022
An 8D music player made to enjoy Halloween this year!🀘

HAPPY HALLOWEEN buddy! Split Player Hello There! Welcome to SplitPlayer... Supposed To Be A 8DPlayer.... You Decide.... It can play the ordinary audio

Akshat Kumar Singh 1 Nov 04, 2021
digital audio workstation, instrument and effect plugins, wave editor

digital audio workstation, instrument and effect plugins, wave editor

306 Jan 05, 2023