भाषण को पाठ में बदलना: एक सरल श्रुतलेख ऐप कैसे बनाएं

लेखक: Lewis Jackson
निर्माण की तारीख: 13 मई 2021
डेट अपडेट करें: 1 जुलाई 2024
Anonim
How to make a speech to text application in C#
वीडियो: How to make a speech to text application in C#

विषय


कई एप्लिकेशन, सेवाएँ और घरेलू गैजेट बेहतर उपयोगकर्ता अनुभव प्रदान करने और पहुँच में सुधार करने के लिए वाक् पहचान का उपयोग करते हैं। अनगिनत एंड्रॉइड ऐप हैं जो भाषण मान्यता का उपयोग करते हैं - जिनमें से सबसे उल्लेखनीय Google सहायक है - तो क्यों नहीं सूट का पालन करें और इस सुविधा को अपने स्वयं के एंड्रॉइड एप्लिकेशन में जोड़ें?

इस लेख में, मैं एंड्रॉइड के भाषण-से-टेक्स्ट इरादे के साथ आरंभ करने के लिए एक त्वरित और आसान तरीका साझा करता हूं, जो कि आवेदनों की एक विस्तृत श्रृंखला में उपयोगी हो सकता है। उदाहरण के लिए, आप थकाऊ पहचान को स्वचालित मैन्युअल डेटा प्रविष्टि को स्वचालित रूप से उपशीर्षक उत्पन्न करने के लिए वाक् पहचान का उपयोग कर सकते हैं, या यहां तक ​​कि अनुवाद एप्लिकेशन के आधार के रूप में जो मुखर इनपुट के लिए "सुनता है", इसे पाठ में रूपांतरित करता है, फिर इस पाठ का अनुवाद करता है और परिणामों को प्रदर्शित करता है उपभोक्ता।

आपके द्वारा बनाए गए एप्लिकेशन के प्रकार के बावजूद, वाक् पहचान आपके ऐप के साथ बातचीत करने का वैकल्पिक तरीका प्रदान करके उपयोगकर्ताओं तक पहुँच में सुधार कर सकती है। उदाहरण के लिए, गतिशीलता, निपुणता, या दृष्टि के मुद्दों वाले लोगों को टचस्क्रीन या कीबोर्ड के बजाय वॉइस कमांड का उपयोग करके मोबाइल एप्लिकेशन नेविगेट करना आसान हो सकता है। इसके अलावा, विश्व स्वास्थ्य संगठन (डब्ल्यूएचओ) के अनुसार, एक अरब से अधिक लोगों के पास विकलांगता का कोई रूप है, जो दुनिया की आबादी का लगभग 15% के बराबर है। अपने एप्लिकेशन में एक्सेसिबिलिटी सुविधाओं को जोड़ने से आपके संभावित दर्शकों में काफी वृद्धि हो सकती है।


इस लेख के अंत तक, आपने एक सरल स्पीच-टू-टेक्स्ट एप्लिकेशन बनाया होगा जो आपकी आवाज़ को रिकॉर्ड करता है, इसे टेक्स्ट में परिवर्तित करता है और फिर उस टेक्स्ट को ऑन-स्क्रीन प्रदर्शित करता है।

एक भाषण से पाठ उपयोगकर्ता इंटरफ़ेस का निर्माण

शुरू करने के लिए, "खाली गतिविधि" टेम्पलेट का उपयोग करके एक नया एंड्रॉइड प्रोजेक्ट बनाएं।

हम एक साधारण एप्लिकेशन बना रहे होंगे, जिसमें एक बटन होता है, जब टैप किया जाता है, तो एंड्रॉइड के स्पीच-टू-टेक्स्ट इंटेंट को ट्रिगर करता है और एक डायलॉग प्रदर्शित करता है जो बताता है कि आपका ऐप स्पीच इनपुट को स्वीकार करने के लिए तैयार है। एक बार जब उपयोगकर्ता बोलना समाप्त कर लेता है, तो उनके इनपुट को टेक्स्ट में बदल दिया जाएगा, और फिर टेक्स्ट व्यू के हिस्से के रूप में प्रदर्शित किया जाएगा।

हमारे लेआउट को बनाकर शुरू करें:

यह हमें निम्नलिखित लेआउट देता है:


अपने Android ऐप में वाक् पहचान जोड़ना

हम दो चरणों में भाषण इनपुट को कैप्चर और प्रोसेस करते हैं:

1. RecognizerIntent प्रारंभ करें

भाषण-से-पाठ रूपांतरण करने का सबसे आसान तरीका है RecognizerIntent.ACTION_RECOGNIZE_SPEECH का उपयोग करना। यह आशय उपयोगकर्ता को एंड्रॉइड के परिचित माइक्रोफोन संवाद बॉक्स लॉन्च करके मुखर इनपुट के लिए प्रेरित करता है।

एक बार जब उपयोगकर्ता बात करना बंद कर देता है, तो संवाद स्वचालित रूप से बंद हो जाएगा और ACTION_RECOGNIZE_SPEECH एक वाक् पहचानकर्ता के माध्यम से रिकॉर्ड किए गए ऑडियो भेजेगा।

हम बंडल को अतिरिक्त के साथ StartActivityForResult () का उपयोग करके RecognizerIntent.ACTION_RECOGNIZE_SPEECH शुरू करते हैं। ध्यान दें कि जब तक अन्यथा निर्दिष्ट नहीं किया जाता है, पहचानकर्ता डिवाइस के डिफ़ॉल्ट लोकेल का उपयोग करेगा।

public void onClick (देखें v) {// ट्रिगर the RecognizerIntent इरादा // इरादे का इरादा = नया इरादा (RecognizerIntent.ACTION_RECOGNIZE_SPEECH); कोशिश {startActivityForResult (इरादा, REQUEST_CODE); } कैच (एक्टिविटीनॉटफ़ाउंड एक्ससेप्शन a) {}}

2. भाषण प्रतिक्रिया प्राप्त करना

एक बार भाषण मान्यता संचालन पूरा हो जाने के बाद, ACTION_RECOGNIZE_SPEECH परिणाम को कॉलिंग एक्टिविटी ऑफ़ स्ट्रिंग्स के रूप में वापस भेज देगा।

चूंकि हमने StartActivityForResult () के माध्यम से RecognizerIntent को चालू किया है, हम वाक् पहचान कॉल आरंभ करने वाली गतिविधि में onActivityResult (int requestCode, int resultCode, Intent data) पर ओवरराइड करके परिणाम डेटा को संभालते हैं।

परिणाम भाषण पहचानकर्ता आत्मविश्वास के अवरोही क्रम में वापस आ जाते हैं। इसलिए, यह सुनिश्चित करने के लिए कि हम सबसे सटीक पाठ प्रदर्शित कर रहे हैं, जिसे हमें दिए गए ArrayList से शून्य स्थान लेना है, फिर इसे अपने TextView में प्रदर्शित करें।

@Override // हमारे इरादे के कॉलर गतिविधि में एक OnActivityResult विधि को परिभाषित करें // संरक्षित शून्य onActivityResult (int requestCode, int resultCode, Intent data) {super.onActivityResult (अनुरोधकोड, resultCode, डेटा); स्विच (अनुरोधकोड) {मामला REQUEST_CODE: {// अगर RESULT_OK लौटाया जाता है ... // अगर (resultCode == RESULT_OK && null! = data) {//..then पुनः प्राप्त करें ArrList // ArrayList परिणाम = data.getStringArrayListExtra (RecognizerIntent.EXTRA_RESULTS); // हमारे TextView // textOutput.setText (result.get (0)) को अपडेट करें; } टूटना; }}}}}

ध्यान दें कि स्पीच-टू-टेक्स्ट को एक सक्रिय इंटरनेट कनेक्शन की आवश्यकता नहीं है, इसलिए उपयोगकर्ता के ऑफ़लाइन होने पर भी यह सही ढंग से काम करेगा।

उपरोक्त सभी चरणों को पूरा करने के बाद, आपकी मुख्यता कुछ इस तरह दिखनी चाहिए:

आयात android.content.ActivityNotFoundException; import androidx.appcompat.app.AppCompatActivity; आयात android.os.Bundle; आयात android.content.ntent; आयात android.speech.RecognizerIntent; आयात android.widget.TextView; आयात android.view.View; आयात java.util.ArrayList; सार्वजनिक वर्ग MainActivity का विस्तार AppCompatActivity {निजी स्थिर अंतिम int REQUEST_CODE = 100; निजी पाठ दृश्य textOutput; @Override संरक्षित शून्य onCreate (बंडल सहेजी गई InstanceState) {super.onCreate (saveInstanceState); setContentView (R.layout.activity_main); textOutput = (TextView) findViewById (R.id.textOutput); } // इस विधि को बटन के साथ कहा जाता है दबाया जाता है // public void onClick (View v) // "IntognizerIntent.ACTION_RECOGNIZE_SPEECH" एक्शन के साथ एक आशय बनाएं // {Intent इरादा = new Intent (RecognizerIntent.ACTION_RECOGNIZE_SPEECH); कोशिश करें {// गतिविधि शुरू करें और प्रतिक्रिया के लिए प्रतीक्षा करें // startActivityForResult (इरादा, REQUEST_CODE); } catch (ActivNotFoundException a) {}} @Override // परिणामों को हैंडल करें // संरक्षित शून्य onActivityResult (int requestCode, int resultCode, Intent data) {super.onActivity_ult (requestCode, resultCode, data); स्विच (अनुरोधकोड) {मामला REQUEST_CODE: {if (resultCode == RESULT_OK_& null! = data) {ArrayList परिणाम = data.getStringArrayListExtra (RecognizerIntent.EXTRA_RESULTS); textOutput.setText (result.get (0)); } टूटना; }}}}}

आप पूरा प्रोजेक्ट GitHub से डाउनलोड कर सकते हैं।

अपने प्रोजेक्ट का परीक्षण

परीक्षण के लिए अपना आवेदन डालने के लिए:

  • अपने प्रोजेक्ट को किसी भौतिक Android डिवाइस या Android वर्चुअल डिवाइस (AVD) पर स्थापित करें। यदि आप एक AVD का उपयोग कर रहे हैं, तो आपकी विकास मशीन में एक अंतर्निहित माइक्रोफ़ोन होना चाहिए या आप बाहरी माइक्रोफ़ोन या हेडसेट का उपयोग कर सकते हैं।
  • एप्लिकेशन के "स्टार्ट डिक्टेशन" बटन पर टैप करें।
  • जब माइक्रोफोन डायलॉग बॉक्स दिखाई दे, तो अपने डिवाइस में बोलें। कुछ क्षणों के बाद, आपके शब्दों को स्क्रीन पर दिखाई देना चाहिए।

समेट रहा हु

इस लेख में, हमने देखा कि आप स्पीच-टू-टेक्स्ट इंटेंट का उपयोग करके अपने एंड्रॉइड एप्लिकेशन में भाषण पहचान कैसे जल्दी और आसानी से जोड़ सकते हैं। क्या आपने किसी भी एंड्रॉइड ऐप का सामना किया है जो आश्चर्यजनक या अभिनव तरीके से भाषण मान्यता का उपयोग करता है?

आगामी: Google ARCore के साथ एक संवर्धित वास्तविकता Android ऐप बनाएं

आज, एलजी ने घोषणा की कि उसका संपर्क रहित भुगतान ऐप एलजी पे पहली बार संयुक्त राज्य अमेरिका में उपलब्ध है। Google पे और सैमसंग पे के समान ऐप के साथ, एलजी का संस्करण आपको देश भर के कई अलग-अलग क्रेडिट कार...

हम पहले से ही जानते हैं कि LG G8 ThinQ को मोबाइल वर्ल्ड कांग्रेस (MWC) 2019 में दिखाया जाएगा। लेकिन कोरियाई ब्रांड ने बार्सिलोना इवेंट से पहले कई बजट डिवाइसों पर से पर्दा हटाया है।...

साइट चयन