How they can calculate what tone it is going to do? And what are the factors to consider?
In a simplified picture a Tesla coil is just a transformer which creates a high voltage, high frequency current between the top part and the grounded bottom.
This transformer receives it's energy from an AC source. If you modulate the AC source (amplitude modulation) the sound created from the sparks of the Tesla coil will also be modulated with that frequency and in the end can be used to play music.
In short, the Tesla coil is converting air into plasma, which changes its volume, which causes pressure waves to spread out in all directions (sound).
The sparks are created by a self-oscillating coil, which happens at a high, inaudible frequency (20 to 100 kHz).
The self-oscillating coil, though, is driven by pulses from a spark gap or lower-frequency oscillator, which is in the audible range. By adjusting the frequency of this pulse generator, the rate at which plasma bursts are generated can be varied, which varies the frequency of the sound produced.
I've seen this done in person and it's pretty awesome, but I've always wondered why they play only constant tones. I think they could use something like pulse density modulation to produce any arbitrary waveform and turn the coils into giant loudspeakers.