I am still unclear due to what I came across in a Cisco Press Book which says:
The transcoder has to be deployed close to the device that supports only G.711 or G.722. That device sends a G.711 or G.722 stream to the transcoder, which transcodes the audio to a low-bandwidth codec, such as G.729, all in real time. The G.729 voice stream is then sent from the transcoder to the other device, such as a phone located at a remote site, over the IP WAN. It is important to avoid transcoding more than one time in a single call flow whenever possible because the audio quality may be significantly reduced.
It is important for the media resource group list to be configured so that the device that is limited to the higher-bandwidth codec is the one that requests the transcoder media resource. For example, if only G.729 is permitted between two IP Phones, but one IP Phone supports only G.711, the phone using G.729 that cannot comply with the permitted codec is the one that requests a transcoder. Therefore, the media resource group list of this phone requires access to a transcoder, which should be physically located close to the requesting device. Regions have to be set up in such a way that the requesting phone is allowed to use G.711 to the transcoder. This call leg is also subject to region configuration.
The first paragraph agrees with what you said. However, I am confused by the second pargagraph which seems to contract the first paragraph by saying that the trascoder should be physically located close to the requesting device, which would be g.729.
It basically means that if the region between your device and mrgl should be g711/g722 high bw codecs and it can transcode to g729 etc, if the region relationship is g729 you cannot do a g711 transcode (basically you can get less from more, however you cannot get more from less)
hope i didnt confuse you further.