This is correct, Technically correct the best kind!
However often (always?!) the decoder related microcode is on a separate cpu to the main application one and the interface treats it as a hardware decoder. If you pay for the chip you get the current capabilities of the chip/microcode and any changes have to be negotiated. Adding a new codec can and has been done (eg vc1) but I don't know of any manufacture that provides enough access for a 3rd party to add it themselves.
The argument may be over simplification but for all practical purposes it still stands. Have you tried requesting access or feature changes to these devices? If you know of any solution that allows a relevant level of access then please let me know!