Hi All,

currently the WAV files generated by WSJT-X only contain the audio 
format description and the PCM sample data. I note that there has been 
some investigation into adding some metadata to the files as well. The 
WAV file format allows for various optional chunks to be included which 
we could gain advantage from. First off I have amended the current WAV 
file reading code such that any standard format WAV file can be read 
rather than the strict subset supported previously. This will allow 
metadata to be added to recorded files while still allowing them to be 
read by the current application and test tools.

Old versions of the application and test tools will choke on WAV files 
with optional metadata but a trivial tool to rewrite WAV files with 
optional metadata stripped could be written.

I propose that we stay within the recognized formats of metadata. I say 
this because sometimes it is handy to read the files with other tools 
like sound analysis and editing tools e.g. Audacity. The WAV file format 
is slightly vague so even though virtually anything may be inserted as 
optional chunks, many applications only handle particular types. The 
most commonly used is the LIST-INFO chunk, this allows variable length 
character data to be added under various identifiers as documented here:

http://bwfmetaedit.sourceforge.net/listinfo.html

I propose that we use some of these ID tags to store our metadata, for 
example:

ISRC: "G4WJS, IO91np"
ISFT: "WSJT-X v1.7.0-devel r6333"
ICRD: "2016-01-02 16:41:00Z"
ICMT: "Mode=JT9+JT65, TRPeriod=60"

The comments (ICMT) chunk could contain a list of several optional tags 
allowing mode specific metadata to be recorded similar to the example above.

I have a C++ class written that allows WAV file reading and writing 
including entries in the LIST-INFO chunk that is suitable for use in 
WSJT-X. It is checked in but not yet used.

Comments, suggestions?

73
Bill
G4WJS.

------------------------------------------------------------------------------
_______________________________________________
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel

Reply via email to