You could use a technique similar to digital processing, but without converting the signal to and from digital codes. For example you could use bucket-brigades clocked in and out at different frequencies, or a tape recorder with two heads and transport mechanisms (real time recording, half speed playback).
However if you want to halve the frequency of an arbitrarily long and complex audio waveform then you have a problem - whether using analog or digital processing. The signal is coming in twice as fast as it is being sent out, so in order to exactly preserve the original waveform you have to continuously store the input. Eventually you must run out of storage space, then you will have to 'catch up' to real time and lose a chunk of the signal.
A sufficiently powerful digital system could simply include massive amounts of storage, or it could apply Fourier transforms to break the signal up into its component frequencies, halve each one and then recombine them. The resulting waveform might not be identical to the original, but it should sound virtually the same.
If you just want to change the frequency of a repetitive waveform (eg. single note from a musical instrument) then you only need enough space to store a single cycle, or perhaps the duration of one note. You then have to accurately detect the end of the waveform so that it can be repeated seamlessly, and decide what to do about its envelope (eg. do you let the note play out at half real time, or force a faster decay?).