ttttttttttttt
by velo_ninja
HTML
<!doctype html>
<html>
<head>
<style>
#result {
border: 2px solid black;
height: 200px;
border-radius: 3px;
font-size: 14px;
white-space: pre-wrap;
overflow-y: auto;
margin-bottom: 10px;
}
#finalText {
border: 2px solid black;
height: 100px;
width: 600px;
border-radius: 3px;
font-size: 14px;
white-space: pre-wrap;
overflow-y: auto;
margin-bottom: 10px;
}
button {
position: absolute;
top: 240px;
left: 50%;
margin-right: -50%;
transform: translate(-50%, -50%);
}
</style>
<script type="text/javascript">
let recognition;
let isRecording = false;
let stopRecordingTimeout;
function init() {
window.onmessage = (event) => {
if (event.data) {
console.log("HTML Code Element received a message!");
console.log(event.data);
startRecognition().then(result => {
console.log('Result:', result);
insertMessage(event.data);
});
}
}
}
function startRecognition() {
return new Promise(async (resolve) => {
const resultDiv = document.getElementById("result");
try {
const stream = await navigator.mediaDevices.getUserMedia({ audio: true });
initSpeechRecognition(stream);
} catch (e) {
console.error('Error accessing microphone:', e);
resultDiv.innerText = "Error accessing microphone. Please check your browser settings.";
resolve(null); // Resolve with null if there's an error
}
});
}
function initSpeechRecognition(stream) {
recognition = new webkitSpeechRecognition();
recognition.continuous = true;
recognition.interimResults = true;
recognition.lang =...