Files
abogen/tests
Artem Akymenko 0d46076bf6 refactor: extract audio buffer operations to domain layer
- Add abogen/domain/audio_buffer.py with core audio operations:
  - create_silence(): create silence audio buffer
  - mix_audio(): mix source into target buffer with auto-resize
  - normalize_audio(): normalize to prevent clipping
  - ensure_buffer_size(): extend buffer to minimum size
  - concatenate_audio(): join multiple audio buffers
  - audio_duration(): calculate duration from samples
  - samples_for_duration(): calculate samples from duration
  - SAMPLE_RATE constant (24000)

- Update abogen/pyqt/conversion.py:
  - Import and use create_silence for chapter silence
  - Use mix_audio for subtitle file mixing
  - Use normalize_audio for clipping prevention
  - Use create_silence for padding in subtitle processing

- Update abogen/webui/conversion_runner.py:
  - Import and use create_silence in append_silence
  - Replace np.zeros with domain function

- Add tests/test_audio_buffer.py with comprehensive unit tests
2026-07-15 20:02:33 +03:00
..
2026-01-09 01:36:14 +03:00
2026-01-09 01:36:14 +03:00
2026-01-09 01:36:14 +03:00
2026-01-09 01:36:14 +03:00
2026-01-09 01:36:14 +03:00
2026-01-09 01:36:14 +03:00
2026-01-09 01:36:14 +03:00
2026-01-09 01:36:14 +03:00
2026-01-09 01:36:14 +03:00
2026-01-09 01:36:14 +03:00