3 Commits
Author SHA1 Message Date
sergioandClaude Opus 4.8 1aeaadc902 vela: formato de audio opcional — vigilia en .aac, día en .m4a
El contenedor ahora es una opción (Ajustes) con defaults por modo:
- vigilia nocturna → AAC crudo (ADTS .aac): a prueba de cortes, si el
  proceso muere a media noche el archivo se reproduce hasta donde llegó
  (no depende de un índice final).
- grabar / reunión → .m4a (MP4): mejor búsqueda; son sesiones atendidas.

Refactor del codificador: interfaz Codificador + base común (posee el
MediaCodec AAC-LC) + dos contenedores (CodificadorM4a con MediaMuxer,
CodificadorAac que escribe frames ADTS con su cabecera de 7 bytes a un
flujo plano). Factoría crearCodificador(formato, ...).

Sesion/Repositorio guardan "fmt" (sesiones viejas = .m4a); el nombre de
archivo usa la extensión del formato. Ajustes: formatoVigilia (def AAC) y
formatoDia (def M4A) con selector en la pantalla de ajustes.

NO compilado aquí (sin SDK en este equipo).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-10 01:17:44 +00:00
sergioandClaude Opus 4.8 81bd1537ab vela: modo reunión — transcripción offline por fragmento (Vosk)
Nuevo Modo.REUNION que transcribe lo hablado sin tocar la liviandad de la
noche: vigilia y grabación normal no ejecutan nada de STT (transcriptor
solo se crea en reunión).

- audio/Transcriptor: Vosk offline en hilo propio (cola productor/
  consumidor) alimentado del mismo PCM que ya captura la Grabadora, así el
  reconocimiento pesado no retrasa el hilo de audio ni ensucia el .m4a. El
  reconocedor se reinicia por fragmento → cada fila del log lleva su texto.
- modelo (~45 MB) no va en el APK: se descarga y descomprime la 1ª vez
  (ModeloScreen con progreso); luego todo offline. Reunión fuerza 16 kHz.
- Segmento gana texto (persistido en log.json como "txt"); mutaciones de
  segmentos sincronizadas entre el hilo de captura y el de Vosk.
- UI: 3ª acción "reunión", texto en vivo en GrabandoScreen, texto por
  fragmento en el log, distinción de color (rosa) en las listas.
- dep nueva libs.vosk.android (solo :vela); permiso INTERNET para bajar
  el modelo.

Formato de audio se queda en .m4a (AAC) por decisión del usuario.
NO compilado aquí (sin SDK en este equipo).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-10 01:07:23 +00:00
sergioandClaude Opus 4.8 48189204c5 vela: grabadora inteligente (VAD + compacta silencios + vigilia nocturna)
Nueva app del rizoma :vela (com.rizoma.vela). Graba con AudioRecord (PCM
16 kHz mono), pasa cada cuadro por una puerta de voz adaptativa con
histéresis, pre-roll y cola, y solo codifica lo que suena → AAC/.m4a
(MediaCodec+MediaMuxer, sin deps ni LAME). Los silencios no se guardan:
el audio queda contiguo y compacto, y el log de diálogo registra los
tiempos reales.

- log de diálogo: línea de tiempo de fragmentos (hora, duración, nivel)
  con silencios colapsados; persistido en log.json (atómico) por sesión.
- vigilia nocturna: foreground service tipo micrófono + wakelock parcial;
  en silencio solo calcula RMS (barato) → ahorra batería con pantalla
  apagada.
- UI Compose rizoma: medidor de onda en vivo, reproducción del audio
  compactado con salto por fragmento, y ajustes (sensibilidad, pre-roll,
  cola, calidad, mantener pantalla).

NO compilado aquí (sin SDK en este equipo).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-10 00:16:56 +00:00