Realmente soy nuevo con reaccionar, estoy tratando de crear una aplicación de voz a texto usando reaccionar, uso este módulo https://github.com/MikeyParton/react-speech-kit . Aquí está mi función de reconocimiento de voz.
function SpeechRecognition() { const [lang, setLang] = useState("en-US"); const [value, setValue] = useState(""); const [blocked, setBlocked] = useState(false); const onEnd = () => { // You could do something here after listening has finished }; const onResult = (result) => { setValue(result); }; const changeLang = (event) => { setLang(event.target.value); }; const onError = (event) => { if (event.error === "not-allowed") { setBlocked(true); } }; const { listen, listening, stop, supported } = useSpeechRecognition({ onResult, onEnd, onError, }); const toggle = listening ? stop : () => { setBlocked(false); listen({ lang }); }; return ( <button disabled={blocked} type="button" onClick={toggle}> {listening ? ( <FontAwesomeIcon icon={faMicrophoneSlash} /> ) : ( <FontAwesomeIcon icon={faMicrophone} /> )} </button> ); }funciona en Android y Windows en cualquier navegador, pero no puedo hacerlo funcionar en IOS, ya sea Safari o Chrome. Después de investigar sobre la API webspeech de IOS, encontré esta publicación http://iwearshorts.com/blog/ios-safari-partial-support-of-web-speech-api/ pero no sé cómo usar esta línea de código en mi código
var SpeechRecognition = SpeechRecognition || webkitSpeechRecognition || null;
https://bory-webspeech.netlify.app/ demostración de mi desarrollo actual
EDITAR
cambio esta linea
const { listen, listening, stop, supported } = useSpeechRecognition({
a
const SpeechRecognition = useSpeechRecognition|| webkitSpeechRecognition || null; `const { listen, listening, stop, supported } = SpeechRecognition ({`pero en IOS sigue sin funcionar