I have not played with this myself, but here are some statements -- one or more might be useful to you.
I don't know if your OBi supports G.729a, but might just do G.729.
Your SIP provider must support the codec you want to use. Not all support that, because it costs the provider money to let you do so. It might only be supported on premium options.
In the admin guide search for *4729 and use that for testing. It lets you request/insist on G.729 for the next call. Let us know what you learn.
In the local web server for your OBi, the Status->Call Status will tell you what codec is in use.
In the codec profiles, the Priority tells the OBi what your preference is. I don't know if 1 is higher than 4 for this purpose, but I suspect it is. That is still just a request to the server. To insure that your favorite codec is used, even if the call fails otherwise, I think you could disable the other codecs.