Files
wedding-phone/config.example.json
grabowski b219619f24 Add separate volume controls for greeting, button, and beep sounds
Added individual volume control for each sound type:
- Greeting volume (for welcome messages)
- Button sound volume (for extra button during recording)
- Beep volume (for recording start indicator)

Backend changes:
- Added volume_greeting, volume_button, volume_beep to config
- New getter/setter methods for each volume type
- API endpoints: /api/volume/greeting, /api/volume/button, /api/volume/beep
- Updated play_sound_file() with volume_override parameter
- Greeting, button, and beep playback now use their specific volumes

Frontend changes (template v1.7.0):
- Replaced single volume slider with three separate sliders
- Clean UI with labeled controls for each sound type
- Helper function setupVolumeSlider() for DRY code
- Real-time updates with debouncing (300ms)
- Visual feedback with gradient background

Config changes:
- Added volume_greeting: 70 (default)
- Added volume_button: 70 (default)
- Added volume_beep: 70 (default)
- Backward compatible with existing configs

This allows independent control of each sound's loudness,
useful when greeting needs to be louder than beep, etc.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-27 15:56:12 +07:00

47 lines
967 B
JSON

{
"gpio": {
"hook_pin": 17,
"hook_pressed_state": "LOW",
"extra_button_enabled": true,
"extra_button_pin": 27,
"extra_button_pressed_state": "LOW"
},
"audio": {
"device_index": 1,
"chunk_size": 1024,
"format": "paInt16",
"channels": 1,
"sample_rate": 48000,
"max_record_seconds": 300
},
"paths": {
"base_dir": "./rotary_phone_data",
"recordings_dir": "recordings",
"sounds_dir": "sounds"
},
"backup": {
"enabled": true,
"usb_paths": [
"/media/usb0",
"/media/usb1"
],
"verify_crc": true,
"backup_on_write": true
},
"web": {
"port": 8080,
"max_upload_size_mb": 50
},
"system": {
"active_greeting": "dialtone.wav",
"extra_button_sound": "button_sound.wav",
"beep_sound": "beep.wav",
"beep_enabled": true,
"greeting_delay_seconds": 0,
"volume": 70,
"volume_greeting": 70,
"volume_button": 70,
"volume_beep": 70
}
}