There may be the same problem with the -d function (capture .amb).
Actually, that one is by design. I don't write decoded voice wav files or .amb/.imb files if the source is encrypted and no key is supplied.
In terms of the .amb/.imb files, without a proper point of reference (i.e., the start of the superframe, key id, alg id, MI) then there would be no way to decyrpt them later on, the only outlier being Moto BP which treats every ambe frame the same. .amb/.imb files do not store any more information than the 49-bit or 88-bit voice frame + its error value.
In order to make the change to always save amb files, you would need to find the relevant code in dsd_mbe.c and remove the encryption conditional check.
Code:
//restore MBE file save, slot 1 -- consider saving even if enc
if (opts->mbe_out_f != NULL && (state->dmr_encL == 0 || opts->dmr_mute_encL == 0) )
{
saveAmbe2450Data (opts, state, ambe_d);
}
would need to be
Code:
//restore MBE file save, slot 1 -- consider saving even if enc
if (opts->mbe_out_f != NULL)
{
saveAmbe2450Data (opts, state, ambe_d);
}
And also the same for slot 2 as well. Keep in mind, I don't plan on making this change to the base source code myself, as this way my intention for .amb and .imb files.
It would be nice to be able to capture all the frames in all cases.
The symbol capture bin files are the preferred method for saving and playback, as they capture everything and allow replay of everything, including the voice frame headers with encryption parameters, sync patters, etc which do allow for a point of reference for keystream generation, and provide correct encryption parameters for decryption. OP25 symbol capture bins are also compatible with DSD-FME, and those can be played back as well (sadly I couldn't make it a two way street due and have OP25 work with DSD-FME capture bins due to differences in how frame sync is handled). The raw wav files are the secondary option, and are tested to work under most circumstances, DMR Simplex aside. In a future release, I may be able to rectify that, but I'm not planning on putting much effort into tracking down the root cause, I treid a few minor things last night to no avail. I think its just the sudden jitter induced by the lack of signal from the off slot that causes it to not write the sample and messes up the synchronization of the wav file.