A bass line that fills a room disappears on a phone. The speaker cannot move air at 60 Hz, so the note is simply absent. Virtual bass replaces the band the speaker cannot play with harmonics of it in a range it can. The ear hears the harmonic series and supplies the fundamental, which is the missing-fundamental effect every small radio has relied on.
Three controls
Crossover is the boundary. Below it is the sub band: removed, and used to drive the harmonics. Above it the file is left alone. The range is 60 to 160 Hz, which spans the lowest note a small speaker reproduces with any weight.
Harmonics sets how loud the generated series comes back. The band below the crossover is normalised to its own envelope and shaped by three Chebyshev polynomials, which produce the octave, the twelfth and the double octave exactly, weighted 4:2:1 the way a plucked bass falls off. The result is high-passed at the crossover, so nothing generated reaches back under it, and low-passed six times above it, so the series stops before it reads as a buzz in the mids.
Remove sub is how much of the original band is taken out. At 100 it is gone, which is right for a phone. For a small speaker that still manages 70 Hz, leave a third of it in.
Where the split happens
The crossover is a Linkwitz-Riley eighth-order pair, 48 dB per octave: the low and high halves sum back to a flat response, so what is not cut is not coloured, and the sub an octave under the crossover is 48 dB down rather than sitting under the harmonics put back in its place. The shaper runs at four times the sample rate. Its highest product is the fourth harmonic of 160 Hz, three decades under Nyquist at that rate, so nothing folds back into the band.
What it cannot do
It cannot make a phone produce 60 Hz. The bass you hear is the ear’s reconstruction, which works on sustained notes and on kick drums with some tail, and less on a short sub-bass hit with nothing above it. On a full-range system the exported file has less low end than the original, by design. Keep both versions.