74 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
		
		
			
		
	
	
			74 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
|  | <html> | ||
|  |     <head> | ||
|  |     </head> | ||
|  |     <body> | ||
|  |         <div id="messages"></div> | ||
|  |         <script> | ||
|  | 
 | ||
|  | function speak(text) { | ||
|  |     // Create a new SpeechSynthesisUtterance instance | ||
|  |     const utterance = new SpeechSynthesisUtterance(text); | ||
|  | 
 | ||
|  |     // Set voice properties (optional) | ||
|  |     utterance.lang = 'en-US'; // Set language (adjust as needed) | ||
|  |     utterance.pitch = 1;      // Adjust pitch (0 to 2) | ||
|  |     utterance.rate = 1;       // Adjust rate/speed (0.1 to 10) | ||
|  |     utterance.volume = 1;     // Adjust volume (0 to 1) | ||
|  | 
 | ||
|  |     // Speak the text | ||
|  |     window.speechSynthesis.speak(utterance); | ||
|  | } | ||
|  | let recognition; | ||
|  | 
 | ||
|  | function startSpeechRecognition() { | ||
|  |     // Check if the Web Speech API is supported | ||
|  |     if (!('SpeechRecognition' in window || 'webkitSpeechRecognition' in window)) { | ||
|  |         console.error('Web Speech API is not supported in this browser.'); | ||
|  |         return; | ||
|  |     } | ||
|  | 
 | ||
|  |     // Initialize SpeechRecognition | ||
|  |     recognition = new (window.SpeechRecognition || window.webkitSpeechRecognition)(); | ||
|  | 
 | ||
|  |     // Configure SpeechRecognition | ||
|  |     recognition.lang = 'en-US'; // Set the desired language | ||
|  |     recognition.continuous = true; // Allow continuous recognition | ||
|  |     recognition.interimResults = true; // Capture interim results | ||
|  | 
 | ||
|  |     // Event listener for speech recognition results | ||
|  |     recognition.onresult = (event) => { | ||
|  |         let transcript = ''; | ||
|  |         for (let i = event.resultIndex; i < event.results.length; i++) { | ||
|  |             transcript += event.results[i][0].transcript; | ||
|  |          | ||
|  | 
 | ||
|  |         } | ||
|  | 
 | ||
|  |         console.log('Recognized Speech:', transcript); | ||
|  |     }; | ||
|  | 
 | ||
|  |     // Handle errors | ||
|  |     recognition.onerror = (event) => { | ||
|  |         console.error('Speech Recognition Error:', event.error); | ||
|  |     }; | ||
|  | 
 | ||
|  |     // Automatically restart recognition if it stops | ||
|  |     recognition.onend = () => { | ||
|  |         console.log('Speech recognition stopped. Restarting...'); | ||
|  |         recognition.start(); | ||
|  |     }; | ||
|  | 
 | ||
|  |     // Start speech recognition | ||
|  |     recognition.start(); | ||
|  |     console.log('Speech recognition started.'); | ||
|  | } | ||
|  | 
 | ||
|  | // Start the speech recognition loop | ||
|  | startSpeechRecognition(); | ||
|  | 
 | ||
|  | 
 | ||
|  | 
 | ||
|  |         </script> | ||
|  |     </body?> | ||
|  | </html> |