Sobre el proyecto

RTranslator es una aplicación de Android para traducción en tiempo real que se ejecuta completamente en el dispositivo, sin enviar datos a servidores externos. Se describe como casi totalmente de código abierto, y el proyecto señala que algunos componentes externos tienen licencias menos permisivas. Modos principales: - Modo conversación: dos o más teléfonos que ejecutan la aplicación se conectan entre sí. El habla se captura (micrófono del teléfono o auricular Bluetooth), se convierte a texto, se envía al otro dispositivo, se traduce allí y se pronuncia en voz alta a través del altavoz o auricular del otro usuario. Esto funciona en ambas direcciones y admite más de dos participantes en diversas combinaciones. - Modo WalkieTalkie: diseñado para intercambios cortos como pedir direcciones o hablar con un dependiente. Funciona con un solo teléfono, escuchando en dos idiomas seleccionables a la vez, detectando qué idioma se habla, traduciendo y pronunciando el resultado. Los usuarios hablan por turnos; los auriculares Bluetooth no son compatibles en este modo. - Modo de traducción de texto: un traductor de texto convencional, con botones de hablar y copiar añadidos en la versión 2.1. La aplicación puede seguir funcionando en segundo plano, incluso cuando el teléfono está en espera o se usan otras aplicaciones, aunque el README señala que algunos teléfonos restringen la energía en segundo plano y que puede ser preferible mantener la aplicación abierta. Modelos y tecnología: La versión 2.x utiliza NLLB de Meta (NLLB-Distilled-600M con caché KV) para la traducción y Whisper de OpenAI (Whisper-Small-244M con caché KV) para el reconocimiento de voz, ambos convertidos a ONNX y cuantizados a int8 con algunos pesos excluidos para limitar la pérdida de calidad. El README informa de optimizaciones que reducen el uso de RAM de NLLB de 2,5 GB a 1,3 GB y el tiempo de ejecución para 75 tokens de 8 s a 2 s, y la RAM de Whisper de 1,4 GB a 0,9 GB con el tiempo de ejecución para 11 s de audio de 1,9 s a 1,6 s. Se utiliza una configuración de Whisper de menor memoria, de unos 0,5 GB, en teléfonos con menos de 8 GB de RAM. La versión 3.0 beta sustituye NLLB por una elección entre los modelos Mozilla Bergamot, Madlad 400 3B y HY-MT 1.5 1.8B, y reemplaza MLKit por alternativas de código abierto (FastText y Lingua), lo que hace que la aplicación sea totalmente de código abierto. También añade técnicas como búsqueda por haz, diccionarios multilingües e integración con Tatoeba. Está prevista una versión web autoalojada para traducción de texto usando modelos de Mozilla. Otros componentes externos enumerados incluyen BluetoothCommunicator y GalleryImageSelector (ambos de código abierto del mismo autor), OnnxRuntime y SentencePiece. MLKit se usó en la versión 2.x para la identificación de idioma en el modo WalkieTalkie. Idiomas: el conjunto principal admitido incluye árabe, búlgaro, catalán, chino, croata, checo, danés, neerlandés, inglés, finés, francés, gallego, alemán, griego, italiano, japonés, coreano, macedonio, polaco, portugués, rumano, ruso, eslovaco, español, sueco, tamil, tailandés, turco, ucraniano, urdu y vietnamita. A partir de la versión 2.1, un ajuste de "Support low quality languages" añade muchos más idiomas con menor calidad de traducción y reconocimiento de voz. La conversión de texto a voz utiliza el TTS del sistema del teléfono, y se recomienda Google TTS. Requisitos e instalación: el README indica que se necesitan al menos 6 GB de RAM para evitar fallos, además de una CPU razonablemente rápida. El APK se descarga desde las versiones de GitHub; en el primer inicio, la aplicación descarga unos 1,2 GB de modelos, con una guía de instalación manual para regiones donde GitHub es lento. La versión 1.0 se ofrece para teléfonos más débiles, pero depende de las API de Google y no es gratuita. Privacidad: el README indica que la aplicación no recopila datos personales y que el autor no opera ningún servidor. El proyecto no tiene anuncios y se financia con donaciones, con la versión 3.0 apoyada por el NGI Mobifree Fund. Entre los problemas conocidos se incluyen caídas ocasionales de la conexión Bluetooth, y la aplicación se describe como todavía en beta.