c:\Users\J\Desktop>sox -V -V -t txw BD.W01 bd.wav
sox: SoX v14.4.2
time: Feb 22 2015 15:05:01
compiler: gcc 4.9.2 20141030 (Fedora MinGW 4.9.2-1.fc21)
arch: 1248 48 44 L OMP
sox DBUG tx16w: Found header filetype LM8953
sox DBUG tx16w: Sample rate = 33333.3Input File : 'BD.W01' (txw)
Channels : 1
Sample Rate : 33333.3
Precision : 12-bit
Sample Encoding: 12-bit Signed Integer PCM
Endian Type : little
Reverse Nibbles: no
Reverse Bits : nosox INFO sox: Overwriting `BD.wav'
sox DBUG wav: Writing Wave file: Microsoft PCM format, 1 channel, 33333 samp/sec
sox DBUG wav: 66667 byte/sec, 2 block align, 16 bits/sampOutput File : 'BD.wav'
Channels : 1
Sample Rate : 33333.3
Precision : 16-bit
Sample Encoding: 16-bit Signed Integer PCM
Endian Type : little
Reverse Nibbles: no
Reverse Bits : no
Comment : 'Processed by SoX'sox INFO sox: effects chain: input 33333.3Hz 1 channels (multi) 12 bits unknown length
sox INFO sox: effects chain: output 33333.3Hz 1 channels (multi) 16 bits unknown length
sox DBUG sox: start-up time = 0.029002
sox DBUG wav: Finished writing Wave file, 10880 data bytes 5440 samples
Converting this TX18W audio file to WAV results in a ByteRate of 66667 rather than 66666. I believe it's caused by SOX trying to use a non-integer sample rate in the conversion (33333.3) which it uses to calculate the byte rate (33333.3 hz * 1 channel * (16-bit/8)) reslting in 66666.6, and when it's all written to the final wav 33333.3 becomes 33333 and 66666.6 becomes 66667. The sample rate needs to be rounded to an integer earlier on.
The file plays fine in most programs, just a couple are finnicky and require it to be re-converted.
https://codeberg.org/sox_ng/sox_ng/issues/552