vk7js
0298aa897b
Implemented beeps on MD-UV3x0 platform driver.
2022-10-28 08:30:47 +02:00
vk7js
32fd910e64
Fixed warnings.
2022-10-28 08:30:47 +02:00
vk7js
a71a06c57a
1. Renamed beepTick to beep_tick for consistency.
...
2. Made beep_tick static.
3. call beep_tick from top of vp_tick because in its prior location it might
not actually be called.
2022-10-28 08:30:47 +02:00
vk7js
f8bfc7fb13
Added mechanism for specifying exactly what is read in the summary.
2022-10-28 08:30:47 +02:00
vk7js
c9ce41a999
Initial beep implementation.
...
Function latch will play high beep when latched and low beep when latch times out.
Menus will play a high beep when you arrow through them and a low beep when you reach the first item.
All keys should play a generic beep sound but this has not been implemented yet.
2022-10-28 08:30:46 +02:00
vk7js
95b7707d87
Implemented speech feedback for setting UTC timezone.
...
Added speaking of negative sign for vp_queueInteger (plus is assumed if not negative).
2022-10-28 08:30:46 +02:00
Silvano Seva
158b38d113
Clearing buffer index and length of codec2 data when the reproduction of a voice prompt is completed
2022-10-28 08:30:46 +02:00
Silvano Seva
cad026f902
Renamed vp_clearCurrPrompt() to vp_flush(), added a vp_stop() function allowing to stop an in-progress voice prompt but without flushing the data buffer
2022-10-28 08:30:46 +02:00
Silvano Seva
d81a4220d1
Fixed voice prompt bugs
...
Fixed following voice prompt bugs:
1. Now say OpenRTX when powering on if vp enabled to let user know radio is on.
2. When switching back to VFO or channel mode from menus, now anounce VFO info or channel info.
3. When entering first digit of frequency in VFO input mode, say it.
4. Refixed issue of concatenating menus rather than clearing menu.
2022-10-28 08:30:46 +02:00
Silvano Seva
1383e3d61e
Reset prompt buffer position to zero once VP had finished speaking so that another play would replay the buffer
2022-10-28 08:30:46 +02:00
Silvano Seva
a40cba2430
Added missing entry in VP table and fixed off-by-one for string table lookups.
2022-10-28 08:30:46 +02:00
Silvano Seva
d0d603901e
Implemented storage of voice prompts data inside the binary executable image. Voice prompts data is placed in .rodata section at link time
2022-10-28 08:30:46 +02:00
Silvano Seva
42b262c437
Refactored voicePromptUtils.h and voicePromptUtils.c
2022-10-28 08:30:46 +02:00
Silvano Seva
c5f109efa5
Refactored voicePrompts.c
2022-10-28 08:30:46 +02:00
Silvano Seva
df5341e103
Refactored voicePrompts.h, aligned function names of voice prompt API to OpenRTX coding style
2022-10-28 08:30:46 +02:00
Silvano Seva
5840f459fa
Renamed UIStrings.h/.c to ui_strings.h/.c and refactored their content
2022-10-28 08:30:46 +02:00
Niccolò Izzo
8eca684a7d
Voice prompts bugfixes:
...
- added missing initialization of codec2 in voice prompts code
- discarding the voice prompt header as we only support 3200 bit rate
- fixed wrong offset in pick vpQueueStringTableEntry
- fixed bug in vpInit causing voiceprompts to hang
2022-10-28 08:30:46 +02:00
vk7js
5bb7fc96a8
Renamed a few variables for case consistency, reimplemented vpTick and call from same place as ui_updateFSM to continue playing voice prompts.
2022-10-28 08:30:46 +02:00
vk7js
befc892068
When reading codec2 data, pad out to a multiple of 8 bytes with 0s so that when frames are pushed from the buffer, we don't get garbage at the ends of prompts which are not an exact multiple of 8 bytes.
2022-10-28 08:30:46 +02:00
vk7js
69b023dd4a
First cut at implementation of vpPlay.
2022-10-28 08:30:46 +02:00
vk7js
6b83af622c
Corrected vpDataOffset, now use ftell to obtain file offset after reading in header and toc. Added better verification that the TOC was actually read.
2022-10-28 08:30:46 +02:00
vk7js
e09ce7e95a
Added function implementation to read voiceprompts.vpc header, then read in the table of contents into ram, and then on request, read the codec2 data into the codec2 buffer given an offset and length into the data.
2022-10-28 08:30:46 +02:00
Niccolò Izzo
1f71789a9d
Apply clang-format
2022-10-28 08:30:46 +02:00
vk7js
c0371dad2a
Added pauses between lots of info in summary for comprehensibility.
2022-10-28 08:30:46 +02:00
vk7js
2102c15602
Hook up voice prompts in main startup routine
...
1. Call vpCacheInit() from the main startup routine.
2. If voice prompts are successfully loaded, and the hash key is held down, and the vp level is less than low, vp level is set to high.
3. If voice prompts are not loaded, and the level was set to something higher than beep, it is set to beep so that at a minimum, the user gets some beep feedback. If it was already set to off, nothing is changed.
2022-10-28 08:30:46 +02:00
vk7js
8fab0b1e8c
Added vpLevel and vpPhoneticSpell to settings.
...
These take up 4 bits with 4 bits reserved for on the fly voice rate.
Not yet hooked up to menus.
2022-10-28 08:30:46 +02:00
vk7js
a5985dd55d
Added custom dictionary support for common words used in Channel names and contact names (ported from AccessibleGD77).
...
Added 9 custom word prompts. (One unused).
2022-10-28 08:30:46 +02:00
vk7js
af74978600
If voice prompts can't be loaded then set vpLevel to vpNone.
2022-10-28 08:30:46 +02:00
vk7js
ad07a517bc
Added voice prompt verbosity levels: off, beep, low, medium and high.
2022-10-28 08:30:46 +02:00
vk7js
fd5c5b4979
Got voice prompts code compiling. (certain blocks are commented out until we get codec2 decode figured out).
2022-10-28 08:30:46 +02:00
vk7js
10ddd88f69
Cleanup code to adhere more to coding standard.
...
Got it compiling.
2022-10-28 08:30:46 +02:00
vk7js
af76afb521
Added vpQueueFrequency to speak frequency with proper handling of decimal place and addition of MHz.
2022-10-28 08:30:46 +02:00
vk7js
88619dc682
Refactored symbol handling to clean up code.
2022-10-28 08:30:46 +02:00
vk7js
1d7432ae3b
Reworked all symbols so that they can be processes via a lookup rather than by individual tests. Added more flags so we can optionally speak different categories of symbols.
2022-10-28 08:30:46 +02:00
vk7js
d5568b8ab3
Adding voice prompts skeleton.
2022-10-28 08:30:46 +02:00