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.

Any-to-any voice conversion using synthetic specific-speaker speeches as intermedium features

MediumVC MediumVC is an utterance-level method towards any-to-any VC. Before that, we propose SingleVC to perform A2O tasks(Xi β†’ YΜ‚i) , Xi means utter

谷下雨 47 Dec 25, 2022
A Python library for audio data augmentation. Inspired by albumentations. Useful for machine learning.

Audiomentations A Python library for audio data augmentation. Inspired by albumentations. Useful for deep learning. Runs on CPU. Supports mono audio a

Iver Jordal 1.2k Jan 07, 2023
Python module for handling audio metadata

Mutagen is a Python module to handle audio metadata. It supports ASF, FLAC, MP4, Monkey's Audio, MP3, Musepack, Ogg Opus, Ogg FLAC, Ogg Speex, Ogg The

Quod Libet 1.1k Dec 31, 2022
SinGlow: Generative Flow for SVS tasks in Tensorflow 2

SinGlow is a part of my Singing voice synthesis system. It can extract features of sound, particularly songs and musics. Then we can use these features (or perfect encoding) for feature migrating tas

Haobo Yang 8 Aug 22, 2022
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
Automatically move or copy files based on metadata associated with the files. For example, file your photos based on EXIF metadata or use MP3 tags to file your music files.

Automatically move or copy files based on metadata associated with the files. For example, file your photos based on EXIF metadata or use MP3 tags to file your music files.

Rhet Turnbull 14 Nov 02, 2022
Gradient - A Python program designed to create a reactive and ambient music listening experience

Gradient is a Python program designed to create a reactive and ambient music listening experience.

Alexander Vega 2 Jan 24, 2022
Bot duniya Music Player

Bot duniya Music Player Requirements πŸ“ FFmpeg (Latest) NodeJS nodesource.com (NodeJS 17+) Python (3.10+) PyTgCalls (Lastest) 2nd Telegram Account (ne

Aman Vishwakarma 16 Oct 21, 2022
Audio Retrieval with Natural Language Queries: A Benchmark Study

Audio Retrieval with Natural Language Queries: A Benchmark Study Paper | Project page | Text-to-audio search demo This repository is the implementatio

21 Oct 31, 2022
Vixtify - Python Controlled Music Player

Strumm Sound Playlist : Click me to listen Welcome to GitHub Pages You can use the editor on GitHub to maintain and preview the content for your websi

Vicky Kumar 2 Feb 03, 2022
Algorithmic Multi-Instrumental MIDI Continuation Implementation

Matchmaker Algorithmic Multi-Instrumental MIDI Continuation Implementation Taming large-scale MIDI datasets with algorithms This is a WIP so please ch

Alex 2 Mar 11, 2022
Mentos Music Bot With Python

Mentos Music Bot For Any Query Join Our Support Group πŸ‘₯ Special Thanks - @OfficialYukki Hey Welcome To Here πŸ’« πŸ’« You Can Make Your Own Music Bot Fo

Cyber Toxic 13 Oct 21, 2022
SU Music Player β€” The first open-source PyTgCalls based Pyrogram bot to play music in voice chats

SU Music Player β€” The first open-source PyTgCalls based Pyrogram bot to play music in voice chats Note Neither this, or PyTgCalls are fully

SU Projects 58 Jan 02, 2023
praudio provides audio preprocessing framework for Deep Learning audio applications

praudio provides objects and a script for performing complex preprocessing operations on entire audio datasets with one command.

Valerio Velardo 105 Dec 26, 2022
Using python to generate a bat script of repetitive lines of code that differ in some way but can sort out a group of audio files according to their common names

Batch Sorting Using python to generate a bat script of repetitive lines of code that differ in some way but can sort out a group of audio files accord

David Mainoo 1 Oct 29, 2021
An Amazon Music client for Linux (unpretentious)

Amusiz An Amazon Music client for Linux (unpretentious) ↗️ Install You can install Amusiz in multiple ways, choose your favorite. πŸš€ AppImage Here you

Mirko Brombin 25 Nov 08, 2022
Open-Source bot to play songs in your Telegram's Group Voice Chat. Powered by @Akki_ThePro

VcPlayer Telegram Voice-Chat Bot [PyTGCalls] ⇝ Requirements β‡œ Account requirements A Telegram account to use as the music bot, You cannot use regular

Akki ThePro 2 Dec 25, 2021
Simple, hackable offline speech to text - using the VOSK-API.

Nerd Dictation Offline Speech to Text for Desktop Linux. This is a utility that provides simple access speech to text for using in Linux without being

Campbell Barton 844 Jan 07, 2023
Graphical interface to control granular sound synthesis.

Granular sound synthesis interface SoundGrain is a graphical interface where users can draw and edit trajectories to control granular sound synthesis

Olivier BΓ©langer 122 Dec 10, 2022
Open Sound Strip, Sequence or Record in Audacity

Audacity Tools For Blender Sound editing in Blender Video Sequence Editor with Audacity integrated. Send/receive the full edited sequence or single st

64 Dec 31, 2022