I'm converting PCM audio to GSM by using a CMMFCodec.
I've found that the type of GSM I get, even being a GSM 6.10, is in the Microsoft packed format with two frames packed in 65 bytes without padding and with particular bit order.
This is called MS-GSM (used in Windows but not in many non MS progs) and different from the more wide spread version:
I've not found documentation stating anything about this apart from that what I get is "GSM 6.10" but as we see this is not exactly true, it's (MS-)GSM 6.10 .
There could be a parameter or something to have the encoder produce the non-MS version?