Audio to Text using OpenAI Whisper

Plaban Nayak
13 min readSep 27, 2022

--

https://openai.com/blog/whisper/

Whisper is an automatic speech recognition (ASR) system trained on 680,000 hours of multilingual and multitask supervised data collected from the web. We show that the use of such a large and diverse dataset leads to improved robustness to accents, background noise and technical language. Moreover, it enables transcription in multiple languages, as well as translation from those languages into English.

The codebase also depends on most prominently on the below Python packages:

  1. HuggingFace Transformers for their fast tokenizer implementation

2. ffmpeg-python for reading audio files.

Languages Supported

{“af_za”: “Afrikaans”, “am_et”: “Amharic”, “ar_eg”: “Arabic”, “as_in”: “Assamese”, “az_az”: “Azerbaijani”, “be_by”: “Belarusian”, “bg_bg”: “Bulgarian”, “bn_in”: “Bengali”, “bs_ba”: “Bosnian”, “ca_es”: “Catalan”, “cmn_hans_cn”: “Chinese”, “cs_cz”: “Czech”, “cy_gb”: “Welsh”, “da_dk”: “Danish”, “de_de”: “German”, “el_gr”: “Greek”, “en_us”: “English”, “es_419”: “Spanish”, “et_ee”: “Estonian”, “fa_ir”: “Persian”, “fi_fi”: “Finnish”, “fil_ph”: “Tagalog”, “fr_fr”: “French”, “gl_es”: “Galician”, “gu_in”: “Gujarati”, “ha_ng”: “Hausa”, “he_il”: “Hebrew”, “hi_in”: “Hindi”, “hr_hr”: “Croatian”, “hu_hu”: “Hungarian”, “hy_am”: “Armenian”, “id_id”: “Indonesian”, “is_is”: “Icelandic”, “it_it”: “Italian”, “ja_jp”: “Japanese”, “jv_id”: “Javanese”, “ka_ge”: “Georgian”, “kk_kz”: “Kazakh”, “km_kh”: “Khmer”, “kn_in”: “Kannada”, “ko_kr”: “Korean”, “lb_lu”: “Luxembourgish”, “ln_cd”: “Lingala”, “lo_la”: “Lao”, “lt_lt”: “Lithuanian”, “lv_lv”: “Latvian”, “mi_nz”: “Maori”, “mk_mk”: “Macedonian”, “ml_in”: “Malayalam”, “mn_mn”: “Mongolian”, “mr_in”: “Marathi”, “ms_my”: “Malay”, “mt_mt”: “Maltese”, “my_mm”: “Myanmar”, “nb_no”: “Norwegian”, “ne_np”: “Nepali”, “nl_nl”: “Dutch”, “oc_fr”: “Occitan”, “pa_in”: “Punjabi”, “pl_pl”: “Polish”, “ps_af”: “Pashto”, “pt_br”: “Portuguese”, “ro_ro”: “Romanian”, “ru_ru”: “Russian”, “sd_in”: “Sindhi”, “sk_sk”: “Slovak”, “sl_si”: “Slovenian”, “sn_zw”: “Shona”, “so_so”: “Somali”, “sr_rs”: “Serbian”, “sv_se”: “Swedish”, “sw_ke”: “Swahili”, “ta_in”: “Tamil”, “te_in”: “Telugu”, “tg_tj”: “Tajik”, “th_th”: “Thai”, “tr_tr”: “Turkish”, “uk_ua”: “Ukrainian”, “ur_pk”: “Urdu”, “uz_uz”: “Uzbek”, “vi_vn”: “Vietnamese”, “yo_ng”: “Yoruba”}

Convert You Tube Video Audio in any language to English using OpenAI Whisper

Install openai whisper

pip install git+https://github.com/openai/whisper.git -q

install package to for downloading YouTube videos.

pip install pytube -q

Download the YouTube video

from pytube import YouTube
yt = YouTube(‘https://www.youtube.com/watch?v=cE-Ej1ycXtk')
print(yt.title)

Save YouTube video as mp3 file

def video2mp3(video_file, output_ext="wav"):
filename, ext = os.path.splitext(video_file)
subprocess.call(["ffmpeg", "-y", "-i", video_file, f"{filename}. {output_ext}"],stdout=subprocess.DEVNULL,stderr=subprocess.STDOUT)
return f"{filename}.{output_ext}"

Call the video to mp3 function

input_video = filename
audio_file = video2mp3(input_video)

Python Code for Speech-to-Text in three lines

import whisper
model = whisper.load_model('medium')
model.transcribe(audio_file,fp16=False)[‘text’]

The text deciphered from the audio file

अजक समय में विज्यान का ख्षेत्र बहुत तरक्के कर रहा है। कलम से लेकर लेप्टॉप तक सब कुछ विज्यान की देन है। हमारे दुन्या केज़ेट्स और मशीनों से भरी बड़ी है दोस्तू। विज्यान ने मानव समाज के विकास में एक प्रमुक भूमिका निभाई है। कम्पॉटर मनुष्य की इनी अबुत खुजो में से एक है जिसने मानव जीवन को लगभक सभिक शेट्रों में प्रभावित किया है। शुर्वाती दिनों में कम्पॉटर इतने सक्षम नहीं थे, लेकिन लगाता दिकास के कारण आज हमारे हर एक काम में कम्पॉटर हमारे जरूरत बन गया है। आने वाले समय में मशीन युक की शुर्वात होने बाली है। या तो आप ये कह सकते हैं कि इसकी शुर्वात हो � और अदिक जानकारी हासिल करना चाहते हैं। तो इस वीडियों में हमारे साथ बने रही हैं, जुसमें हम आपको बताने वाले हैं, मशीन लेरनिंग क्या है, ये काम कैसे करती है, और इसके क्या क्या फाइदे होते हैं। तो दोस्तों सब से पहले हम जाने गे कि मशीन लेरनिंग है क्या, मशीन लेरनिंग आर्टिफिशल इन्टेलिजन्स का एक भाग है, जोकि सिस्टम को ये काबलियत पढान करता है कि वो आव्टॉमाटिकली सीख सके, और जरूद परने पर खुद को वहटर भी बना सकें। म पर अपने अच्छे बूरे सभी अनभूवों से कुछ न कुछ सेखते हैं, और भविष्य में उस अनभूव के आदार पर ही कोई कारे करते हैं। मशीन लेरनिंग के पीज़े का कौनसप्त इसी आदार पर बना है, याने कि किसी एक विश्यश कम्पूटर या मशीन को इस � आपके यहां पर इस्त्रहाएटा को खुद लिए आप गरसे के लिए पर आप आप उसके लिए आप कर सकें। मशीन के सीखने की प्रकर्या डेटा या अव्जर्वेशन से शुरू होती हैं, जुसमें टेरेट इस्पीरियन्स या इंस्टृक्षन्स के ज़िल्ये मशीन प्राप्त डेटा में पैटन की तलाज कर सके, और भविष्य में मनुश्यों द्ये गे उदारों के आधार पर बहतर निर्ने ले सकें. और अब हम जानेगे कि मशीन लेर्निंग काम कैसे करता हैं? मशीन लेर्निंग कृरत्रिन बुध्धिमता, AI का एक रूप हैं, जोकि कम्पूटर को इंसानों के समान सोचने के तरेगे के बारे में सोचना सिखाता हैं, ज़ैसे पिश्ले अनभवों से सेखना और सुधारना. ये देटा के खूज पैटन के पहजान करके काम करता हैं, और इस में कम्से कम हुमन इंट्रवेंशन शामिल होता हैं. मशीन लेर्निंग को इतना मुल्लेवान बनाने का एक बड़ा हिस्सा ये पता लगाने के क्षमता हैं, कि देटा को रीड या कलक करते समयं मानव के नजर पर बहुत जरूरी हैं. सामान्यरूप से मशीन लेर्निंग आल्गोरिदम चार परकार के होते हैं, सुपर्वाइस् लेर्निंग, अन्सुपर्वाइस् लेर्निंग, सेमी सुपर्वाइस् लेर्निंग और रेंफोसमेट मशीन लेर्निंग. सबसे पहले हम बात करते हैं सुपर्वाइस् मशीन लेर्निंग के बारेमे, इस परकार के अल्गोरिदम में मशीन अपने पिछले अनभुओं से जो सिक्षा हुआ होता है, उसे ये नए डेटा में लागू करता है, ताकि वो पहले से दिये गे उडारण का इस्तिमाल करके � दे जाते हैं, जिससे ये अल्गोरिदम इन उदारणों से सीखती हैं, और इन इन्पूट्स के आदार पर सही आउट्पृट का अनुमान लगाती हैं. नम्बर दो, अन्सुपरवाइस्ट मशीन लेरनिंग, अन्सुपरवाइस्ट मशीन लेरनिंग अल्गोरिदम के विप्रित इसमें इनपूट्ट के रूप में उडारण और जवाब पहले से नहीं दिये जाते हैं, इसमें अल्गोरिदम को खुद ही डेटा के आदार पर अ अपस्तती के आदार पर आवट्पूट देता हैं. अन्मबर त्री, सेमी सुपरवाइस्ट लेरनिंग, ये अल्गोरिदम दोनो शुपरवाइस्ट और अन्सुपरवाइस्ट लेरनिंग के बीच में आता हैं, क्योकि प्रशिक्षन के लिए ये दोनो लेबल्ड और अन्लेबल्ड डेटा का इस्तिमाल करता हैं. वो सिस्टम � प्रस्टूत करके अपने आसपास के वातावर्ण से बात्चीत करता हैं, और साथ ही अरेर्ट्स को भी डिसकौर करता हैं. ट्रायल ऐन अरेर को खुज निकालना और उनके बारे में पता लगाना इस अल्गोरिदम के खाशत हैं. ये मैथर्ट मशीन और सॉफ्ट्वेर एजेंट्स को किसी भी भी भीशिश निर्देश के गतिविदियों का खुट से पता लगाने में साहयता करता हैं, जिससे ये सिस्टम की प्रफोमेंस को और बहतर बना सकें. और अब हम जानेगे के मशीन लेरनिंग का इस्तिमाल कहां ये असल में मशीन लेरनिंग अलगुरिन्द्म का ही कमाल हैं, इसके साथ आप गूगल ट्रास्लेटर से कुछ भी पोल सकते हैं. और मशीन लेरनिंग के जर्ये काम करने वाली स्पीच रेकिनिशन यानी बोडि को पहजाने वाले तकनीट अपना काम शुरू कर देगी. पहजाने वाली स्पीच रेकिनिशन तकनी का इस्तिमाल गूगल के आओर भी प्रोडक्ट्स में होता हैं, जैसे गूगल अब में आप अपने वोईज से कुछ भी सबाल कर सकते हैं, और यूटूब में भी आप मंच चाही वीडियों को लिख कर सर्ज करने के लाव आव बो पर आपको पर्टिक्ट करते हैं, इसमें फेस्क डिटेक्षन और इमेज रेकिनिशन के आदार पर फेस्बॉक अपने डेटाबेज में चेक करता हैं, और किसी फोटू या इमेज को पैजान लेता हैं, जब आप आउनलाइन शोपिंग करते हैं तो आपने देखा होगा कि � कैसे सित हमारी जरूद की मेल्स की इनवॉक्स में आप आप थे हैं, और अदिकतर मेल्स पाम मेल्स वाले फोल्डिर में चली जाते हैं, तो इसके पीजे भी मशीन लेरनिंग इस्तिमाल होती रही हैं दोस्टो, जिसमें मशीन लेरनिंग दौरा आउसमाटिक ले किसी इमेल हैं, अपने लिए शुर्वाइन के लिए परिजाता हैं, एक परिजाता हैं लिए लिए परिजाता हैं, परिजाता हैं लिए परिजाता हैं लिए परिजाता हैं लिए परिजाता हैं, उसके लिए परिजाता हैं लिए परिजाता हैं, उसके लिए परिजाता हैं लिए परि� विद्धि लिए परिजाता हैं, अपने लिए हो परिजाता हैं, परिजाता हैं, अपने लिए लिए परिजाता हैं, परिजाता हैं, उसके लिए परिजाता हैं, उसके लिए परिजाता हैं, उसके लिए परिजाता हैं, आपने तक रहे हैं मुझे होते हैं, जोसके पौड़ और वाथी इससे काफी कम खरच में स्वास्ते सुविदाओं को बढ़ड़ावा मिलता हैं। Google और Facebook में भी Machine Learning इस्तिमाल से user को उचित विज्यापन दिखाते हैं। ये सभी विज्यापन user के Past Search behavior पर आदारित होते हैं। इसे लिए इसे Target Ads भी कहा जाता हैं। इसके एलावा Machine Learning का उप्योक Online दोकादहडि को पगड़ने, स्माम filter करने, threat रोकने, और network security क्युट्रे के ख्युट्रे भी क्या जाता हैं। बविष्य में Machine Learning का उप्योक अदिकतम चीजों में के जाने के समभावना हैं। जिसमें Artificial Intelligence का रोल पहुत महत्तपून माना जारा हैं। तो दोस्तो, अम्मीद है कि आपको इस वीडियो में दी गई जानकारी आपको अच्छी लगी होगी। Machine Learning काफी बड़ा विष्य हैं दोस्तो, जिसे हमने आपको short में समझाने के कोशिष की हैं। आशा है कि आपको इसे Machine Learning क्या है, और एक कैसे काम करती है, और इसके क्या क्या फाइदे हैं, इस सभी चीज़ें आपको समझ में आगई होंगी। Machine Learning के विष्य में आपकी क्या राइ हैं, ये आप हमारे साथ जरू शेर कीजीए। और इस वीडियो से चुटी कोई भी परि� आपकों को दबाना बिल्कुल नहीं थान्ने बात।

Translate audio in any language to English

def translate(audio):
options = dict(beam_size=5, best_of=5)
translate_options = dict(task=”translate”, **options)
result = model.transcribe(audio_file,**translate_options)
return result
result = translate(audio_file)
print(result["text"])

Text translated in English

In today’s time, the field of science is very popular. From pen to laptop, everything is about science. Our world is full of gadgets and machines, friends. Science has played a major role in the development of the human society. Computer is one of the amazing discoveries of man, which has influenced human life in almost all areas. In the early days, computers were not so capable. But because of the continuous development, today in every one of our work, computers have become our necessity. The machine age is about to begin in the coming time. Either you can say that it has already begun, where computers now have the ability to think and understand like humans. So today we will learn about a very famous technique, friends, which is called machine learning. Many of you must have heard of it, but if you want to get more information about it, then stay with us in this video, in which we are going to tell you what machine learning is, how it works, and what its benefits are. So friends, first of all we will know what machine learning is. Machine learning is a part of artificial intelligence, which gives the system the ability to automatically learn and make itself better when needed. Machine learning can clearly teach the program to automatically learn without the help of the system. In this, the system is made so perfect to work that the machine can automatically complete the work on the basis of its previous experience and constantly improve it. As we humans do, we learn something from our good and bad experiences and work on the basis of that experience in the future. The concept behind machine learning is based on this. That is, a special computer or machine is programmed in such a way that it can work according to the user’s wish, at the same time, it can store the user’s commands and data related to it. Machine learning focuses on the development of the computer program, which can access the data itself and later use it for its own learning. The process of learning the machine starts with data or observation, in which the machine can search for patterns in the data obtained through direct experience or instructions and make better decisions on the basis of the examples given by humans in the future. The main purpose behind making machine learning is that the computer can learn on its own without the help of a human and complete the work according to it. In simple words, a human wants to make a machine that thinks like himself. And now we will know how machine learning works. Machine learning is a form of artificial intelligence, i.e. AI, which teaches the computer how to think like a human. For example, learning and improving from previous experiences. It works by identifying patterns in the search for data and at least human intervention is involved in it. A big part of making machine learning so valuable is the ability to find out what is missing from the eyes of the human while reading or collecting the data. Machine learning model is capable of finding those subtle patterns which are overlooked during human analysis. To understand the way machine learning works, it is very important to understand its type. In general, machine learning has four types of algorithms. Supervised learning, unsupervised learning, semi-supervised learning and reinforcement machine learning. First of all, we will talk about supervised machine learning. In this type of algorithm, machine learns from its previous experiences and applies it to the new data so that it can use the previous examples to estimate the events in the future. This algorithm works in exactly the same way that humans learn from their experiences. In supervised learning, machines are given different types of examples and answers through which this algorithm learns from these examples and estimates the correct output based on these inputs. Number two, unsupervised machine learning. Unlike unsupervised machine learning algorithms, in this, examples and answers are not given in the form of input. In this, the algorithm has to estimate based on the data itself. That is why this algorithm learns from test data or real data which has not been labeled, classified or categorized from the beginning. The unsupervised learning algorithm identifies similarities in data and outputs such similarities or inconsistencies in each new piece of data. Number three, semi-supervised learning. This algorithm comes between both supervised and unsupervised learning because it uses both labeled and unlabeled data for training. The system that uses this algorithmic method is very easy to improve its learning ability over time. Number four, reinforcement learning. Reinforcement machine learning is a learning method which presents actions and talks to the environment around it and also discovers errors. It is very important to discover well and errors and find out about them. This method helps machine and software agents in finding out specific instructions which can improve the performance of the system. Now we will know where machine learning is being used. Using machine learning, Google is doing a lot of new things such as Google Translator, which detects words and language in a sign board or a photo of a menu written in a language and translates it into your language at the same time. This is actually the wonder of machine learning algorithm. With this, you can say anything to Google Translator. And the speech recognition technique that works through machine learning will start its work. Speech recognition technique is used in other products of Google. For example, you can ask anything with your voice in Google app. And you can also search on YouTube by writing the videos you want. Machine learning is being used in many other places, friends. For example, Facebook, shopping websites, email etc. Facebook is widely used in the world. And machine learning is used in automatic friend tagging suggestions on Facebook. In this, Facebook checks its database on the basis of face detection and image recognition and recognizes a photo or image. When you do online shopping, you must have seen that you can see information related to the product you are searching everywhere. For example, you have searched something on Amazon and after a while, when you open Facebook or YouTube, you can see information related to that product. So all this is actually seen through machine learning. In this, Google keeps an eye on every step you take and shows your knowledge based on that. In the same way, while using email, you must have seen how only the mails we need come in the inbox. And most of the mails go to the spam mails folder. So machine learning is also being used behind this, friends. In this, machine learning automatically detects the content and source of an email. And when something is found wrong, the email is spammed. Now we will know what are the advantages of machine learning. If we talk about the advantages of machine learning, then it has made life easier for humans. Where machine learning is being used in every field to improve work. And for this, machines are being made more effective and more efficient. The use of machine learning is not limited to a single field. In fact, the benefit of this technique is happening in almost every field. For example, in retail, where trade can be easily understood. And the future sale can be estimated. Also, by understanding the browsing behavior of the customer, the right product can be suggested on their screen. So that the customer can gain experience and grow in the sale. Machine learning is also being used in the finance sector. This is how the customer is getting better and faster service. For example, giving and giving, increasing security, and stopping fraud activities. Machine learning is also working very fast in the healthcare industry. With the help of machine learning, human physical activities can be used to find out about their disease. Along with this, in a much less cost, the health benefits are increased. Using machine learning in Google and Facebook, users are shown proper knowledge. All this knowledge is based on the user’s past search behavior. This is why it is also called target ads. In addition, the use of machine learning is used to catch online fraud, spam, filter, stop threats, and network security. In this way, there are many areas where machine learning is being used. And there are many areas where research is being done on how this can prove beneficial for us. In the future, machine learning is likely to be used in many things. In which the role of artificial intelligence is being considered very important. So friends, I hope you liked the information given in this video. Machine learning is a very big topic, friends, which we have tried to explain to you in short. We hope that you have understood what machine learning is, how it works, and what are its benefits. What are your views on machine learning? Please share this with us. And if you have any questions related to this video, you can tell us in the comments below. So that we can solve your problem as soon as possible. If you liked our video, then like it. And share it as much as possible so that other people can also get this information. Don’t forget to subscribe to our channel. And don’t forget to press the bell icon. Thank you very much.

Referrences:

Any to English AI Video Subtitle Captioning App with OpenAI Whisper App Full Tutorial

--

--

Plaban Nayak
Plaban Nayak

Written by Plaban Nayak

Machine Learning and Deep Learning enthusiast

No responses yet