[CQ-Contest] Voice Automation Enhancements

Eric Hilding dx35 at hilding.com
Fri Jan 28 02:13:52 EST 2005

*** RE-Posted from the WriteLog Reflector for the benefit of other Contest 
Logging Software authors and voice-automation enthusiasts.  If you're not 
in one of these categories, please delete this post.

Yeah...I'm still on the old "crusade" here, because IMHO, it *is* the 
future of voice-automation contesting.

W1VE's recent voice-synthesizer efforts have triggered some new insights 
and WL enhancement needs to make this stuff all work for maximum QSOs per 
hour with .wav files, and provide the flexibility needed to deal with real 
world contest situations.  Unlike CW, it's a bit more complex in terms of 
needs but all doable.

I need to dig deeper into the nitty-gritty of the synthesizer stuff Gerry 
is doing, but for those who want to continue to use their own voices and 
self-generated .wav files, here's my latest take on what's needed for more 
efficiency and effectiveness.

Wayne thankfully gave us 20 SSB message fields to work with now which has 
been great!  But to do the more ethereal stuff, we need 10 more (for 
contests with lengthy exchanges & components like SS).  Here's why.

To effectively use voice-automation in SS (IMHO), we need 20 SSB message 
fields alone to handle the "repeat" related scenarios which will always 
happen during a contest:

Examples of when the other station asks for a repeat of one exchange 
component, you need the following capabilities;

1.   <mynum.wav>  - FAST Delivery
2.   <mynum.wav>  - SLOW Delivery
3.   <myprec.wav> - FAST Delivery
4.   <myprec.wav> - SLOW Delivery
5.   <mycall.wav> - FAST Delivery
6.   <mycall.wav> - SLOW Delivery
7.   <mychk.wav> - FAST Delivery
8.   <mychk.wav> - SLOW Delivery
9.   <mysec.wav> - FAST Delivery
10.  <mysec.wav> - SLOW Delivery

Remember, extra QSOs can be had in SS from the "Casual Contesters" & "Pig 
Farmers" on the bands, and they generally do NOT speak "Fast" ;-)

Examples of when you need to ask the other station to repeat one exchange 
component, you need the following capabilities:

1.   <urnum.wav>  - FAST Delivery
2.   <urnum.wav>  - SLOW Delivery
3.   <urprec.wav> - FAST Delivery
4.   <urprec.wav> - SLOW Delivery
5.   <urcall.wav> - FAST Delivery
6.   <urcall.wav> - SLOW Delivery
7.   <urchk.wav> - FAST Delivery
8.   <urchk.wav> - SLOW Delivery
9.   <ursec.wav> - FAST Delivery
10.  <ursec.wav> - SLOW Delivery

When it comes to dealing with all the various flavors of .wav 
files...ESPECIALLY if you want to edit & replace any, IMHO it is absolutely 
critical to have a more organized and efficient filing system (a/k/a 
Sub-Directory classes) to deal with all this stuff.  For those of us 
embarking upon the pre-recording of thousands of fullcallsign.wav files, 
having to scroll through umpteen callsigns when you want to make changes to 
the relatively few general/generic message .wav files would be a 
pain-in-the-butt, if not a nightmare ;-(

Therefore, I would like to suggest the several new enhancement(s) to where 
WriteLog looks for .wav files, and HOW WriteLog deals with Callsigns, 
because this will not only simplify  the management of .wav files, but 
yield the requisite flexibility.  Hopefully, 'yal can follow the 
logic.  "%C" by itself just won't cut the mustard to do what the future of 
voice automation contesting requires.

IMHO, we need 7 sub-directories for .wav files (including 3 reserved 
"Placeholders" for future uses...perhaps involving synthesized .wav file 
generations on-the-fly or .wav file related things we don't even know about 
yet but would like to implement ASAP when we do).  And, 11 variations of 
Callsign command logic (including 3 reserved "Placeholders"):

%C_GW = Sub-Dir: "gw" = General .wav files (tnx.wav, cq.wav, etc.)

%C_CF = Sub-Dir: "cf" = Character .wav files [alpha/numeric] - FAST

%C_CS = Sub-Dir: "cs" = Character .wav files [alpha/numeric] - SLOW

%C_PF = Sub-Dir: "pf" = Phonetic .wav files - FAST

%C_PS = Sub-Dir: "ps" = Phonetic .wav files - SLOW

%C_FCF = Sub-Dir: "fcf" = fullcallsign.wav files - FAST

%C_FCS = Sub-Dir: "fcs" = fullcallsign.wav files - SLOW

%C_XPF = Sub-Dir: "pf" = Prefix .wav files [front-end letters + number(s)] 
only - FAST

%C_XPS = Sub-Dir: "ps" = Prefix .wav files [front-end letters + number(s)] 
only - SLOW

%C_XSF = Sub-Dir: "pf" = Suffix .wav files [back-end letter(s)] only - FAST

%C_XSS = Sub-Dir: "ps" = Suffix .wav files [back-end letter(s)] only - SLOW


Did someone say "7/11"?  The above "Prefix" & "Suffix" callsign logic 
should be self-explanatory, and the "Phonetic" files are accessed from the 
pf (Phonetic FAST) & ps (Phonetic SLOW) sub-directories.

Example "Prefix" & "Suffix" Uses For Other-Station Callsign = W5XD

%C_XPF = Prefix Only: <isthat.wav><%C_XPF> = "Is that Whiskey Five?" (FAST)

%C_XSS = Suffix Only: <%C_XSS><isthatright.wav> = "X-Ray Delta...Is that 
right?" (SLOW)

%C_XPF = Prefix Only: <whosthe.wav><%C_XPF> = "Who's the Whiskey Five?" (FAST)

%C_XSS = Suffix Only: <whosthe.wav><%C_XSS> = "Who's the X-Ray Delta?"  (SLOW)


So you may be wondering how many CTRL + Somekey, SHIFT + Somekey, ALT + 
Somekey combinations you will have to memorize to make all this happen (on 
top of all the other function messages)?  Absolutely NONE !!!

All keystroke combinations can be reduced to ONE BUTTON operation using 
X-Keys Sticks or Desktop (Keypads).  These can be programmed independently 
of WriteLog.  The USB versions of the X-Sticks can be programmed in a 
special "template" which is then downloaded to the X-Stick.  If you want to 
change button functions for different contests, you just change the 
(computer) template (or open it up and download it).  Templates can be 
saved for re-use.  I mean, this is so very, very cool, folks.  I've done it 
and it works!

You can also arm yourself with multiple X-Sticks (like a separate one for 
each major contest you operate), and just swap 'em out from the USB 
port.  Start saving your pennies.  Remember, this can be ONE BUTTON operation.

For those who haven't seen what these X-Keys devices are yet, go to: 
http://www.k6vva.com and look at the two rows of colored buttons mounted at 
an angle above the mini-keyboard (Ooops...that's TRlog on the screen :-)  I 
use PS/2 version of X-Keys stuff with TR on CW.  I plan to add a 3rd 
X-Stick row, which will be like having a 48 button voice-keyer right at my 
fingertips on-the-keyboard... but everything done via WriteLog SSB message 
commands.  See why yet another 10 SSB message lines are needed?

I'm sure a few more things will come to mind, but this should be enough for 
Wayne to digest at the moment :-)


Rick, K6VVA

More information about the CQ-Contest mailing list