The phase is related to the shift in time of the periodic signal component in the input samples.
Here's how to see this...
First, recall that Fast FT is exactly the same thing as Discrete FT, only computed in a more efficient way. So, getting back to the basics we have the transform defined as:
Xk(0<=k<=N-1)= sumfor 0<=n<=N-1(xn * e-j * 2*π * n * k/N)
where:
xn are the input samples
Xk are the output/transformed samples
N is the number of samples
Now, this complex exponent, e-j * 2*π * n * k/N, geometrically represents points on a circle (of radius 1, centered at (0,0)) in the Re/Im plane. See the Euler's formula if you've forgotten this.
For a fixed value of k
(representing a specific frequency of interest in the output/transform) there are no more than N/k
distinct points on this circle for all n
's.
Look at the sum in the formula again:
sumfor 0<=n<=N-1(xn * e-j * 2*π * n * k/N)
In this sum you are scaling the vectors from point (0,0) to the aforementioned points on the circle by the input signal xn. You're making these vectors longer or shorter. And then you're adding them up.
If it so happens that xn contains a periodic signal that has a period of N/k
, then all the maximums of that signal will all align at one point on the circle and sort of amplify each other. Minimums and all other values of the signal contribute too.
Simply put, what you're doing here is winding your input xn onto the circle. If there's a periodic component in the signal and its period matches the "circumference" (=number of points on the circle), you get a peak for that period/frequency because of the aligned maximums and minimums. If the period doesn't match the "circumference", the maximums get all over the place and cancel each other out. And this is the essence of the Fourier Transform, this is how and why it works, no magic, no truly complex math, simple winding of a rope onto a reel.
And the phase that you get in Xk simply indicates the point on the circle where all the maximums aligned. If you shift the periodic signal in xn by a sample or a few, the alignment point will shift too and the phase will change appropriately.
That's the geometric explanation.
Now, you can see this same thing as a mathematical property of the Fourier Transform.
If you have your xn and its transform Xk=F{xn}, then the transform of xn-m will be F{xn-m} = F{xn} * e-j * 2*π * k * m/N = Xk * e-j * 2*π * k * m/N. This is called the shift theorem/property. You should be able to derive this trivially. This factor of e-j * 2*π * k * m/N has a magnitude of 1 and only changes the phase when multiplied by Xk.
And the phase has nothing to do with the frequency.
Also, the maximum frequency of your sampled signal xn is half the sample rate (actually, just a tiny bit less than the half, see the Nyquist sampling theorem). That means the FT your case will never give you anything at or above 22050 Hz because all information at higher frequencies has been lost to the sampling.
And a half of the Xk values will give you components with negative frequencies. That's because when k > N/2
the direction in which you move between the points on the circle reverses. So, the maximum frequency is still less than half the sample rate, despite having so many samples in the output/transform.