I think that there is no formula. The best one can do is to estimate. Here is a simpler problem of the same sort: suppose you have a parametrization of the boundary of a simply connected region, and suppose that 0 is inside. Consider the Riemann mapping f of this region sending 0 to 0. The problem is to find |f'(0)|. There is no formula in any reasonable case.
Of course this is not a theorem, because one cannot define what a "formula" is. Both quantities, the modulus of a ring, and |f'(0)| in the simplified problem are solutions of certain extremal problems. So one can write a "formula" involving sup over some class of functions.
Added on 9.19: I don't know why the question about a "formula" is important. There are reasonably good converging algorithms for finding moduli of rings, of course. The closest thing to a "formula" for a conformal map of a simply connected region that I know is described in the papers of Wiegmann and Zabrodin, for example, MR1785428. Perhaps this can be modified to make a formula for the modulus of a ring.
Added on the same day: Here is a "formula". Let $\mu$ and $\nu$ be two probability measures, one sitting on each boundary component. Let $\rho=\mu-\nu$. Then $$\log r=-2\pi\sup\int\int\log|z-w|d\rho(z)d\rho(w),$$ where the $\sup$ is taken over all such measures. If your boundaries are smooth, the measures are also smooth, and can be described by smooth densities.
Explanation. Think of the boundaries as bases of metal cyinders, and put unit charges on them, one positive another negative. Then allow the charges to flow according to Coulomb Law. they will occupy the equilibrium position (minimizing the energy). This minimal energy is $\log r/\(2\pi)$ and it is conformally invariant. It is the so-called capacity of a condenser.
This was given as an example of what I meant by a formula containing a sup over a set of functions.