// Function to initialize speech recognition for a specific input and mic function initSpeechRecognition(micId, textId) { const SpeechRecognition = window.SpeechRecognition || window.webkitSpeechRecognition; const recognition = new SpeechRecognition(); recognition.continuous = false; recognition.lang = 'en-US'; recognition.interimResults = false; // Add event listener to the mic element const micElement = document.getElementById(micId); const textElement = document.getElementById(textId); if (!micElement || !textElement) { console.error(`Element with ID ${micId} or ${textId} not found`); return; } console.log(`Initializing speech recognition for ${micId} and ${textId}`); micElement.addEventListener('click', function () { console.log(`Starting recognition for ${micId}`); recognition.start(); }); // Handle the result and insert recognized text into the corresponding input field recognition.onresult = function (event) { const speechToText = event.results[0][0].transcript; console.log(`Recognized text for ${micId}: ${speechToText}`); textElement.value = speechToText; }; recognition.onerror = function (event) { console.error(`Speech recognition error for ${micId}:`, event.error); }; recognition.onspeechend = function () { console.log(`Stopping recognition for ${micId}`); recognition.stop(); }; } // Measurement Special Choice initSpeechRecognition('speakmic', 'speaktext'); initSpeechRecognition('speakmic2', 'speaktext2'); initSpeechRecognition('speakmic3', 'speaktext3'); initSpeechRecognition('speakmic4', 'speaktext4'); initSpeechRecognition('speakmic5', 'speaktext5'); initSpeechRecognition('speakmic6', 'speaktext6'); initSpeechRecognition('speakmic7', 'speaktext7'); initSpeechRecognition('speakmic8', 'speaktext8'); initSpeechRecognition('speakmic9', 'speaktext9'); initSpeechRecognition('karigarnamemic', 'karigarnametext'); initSpeechRecognition('presentaddressmic', 'presentaddresstext'); initSpeechRecognition('parmanentaddressmic', 'parmanentaddresstext');