1.5 KiB
1.5 KiB
Notas de grabación y visualización real de audio
Referencia interna: este archivo vive en docs/ y no está listado en
flutter.assets, así que no se compila dentro de la aplicación.
Decisiones aplicadas
- La grabación de radio se hace leyendo el stream HTTP original de la emisora y escribiendo sus bytes a disco. No se graba micrófono ni salida del sistema.
- La ventaja es que se conserva la calidad original del stream y se evita recomprimir audio.
- La forma de onda real se intenta capturar en Android con
android.media.audiofx.Visualizerusando elandroidAudioSessionIdexpuesto porjust_audio. - Si Android deniega permisos o el dispositivo no permite capturar esa sesión, la UI cae al visualizador animado anterior para no bloquear el reproductor.
Fuentes consultadas
just_audioexponeandroidAudioSessionIdStreampara enlazar efectos o visualizadores Android a la sesión activa: https://pub.dev/packages/just_audio/versions/0.10.4- Android
Visualizerpermite capturar waveform de contenido en reproducción y requiere permisoRECORD_AUDIO: https://www.android-doc.com/reference/android/media/audiofx/Visualizer.html - Radio Browser permite ordenar búsquedas por
bitratey expone camposcodec/bitrate: https://stations.radioss.app/ - El paquete
audio_visualizerexiste, pero se descartó como dependencia inmediata porque duplicaría reproducción con su propio player; PluriWave ya usaaudio_service+just_audioy acabamos de estabilizar ese flujo: https://pub.dev/packages/audio_visualizer