We present and explicate below the most basic formulae of the Doppler effect in a medium in the classical limit: i.e., when relativistic effects are negligible. The medium is at rest in an inertial frame.
Hereafter, for brevity, we usually just say the classical Doppler effect instead of "the Doppler effect in a medium ... "
          The derivation of the most basic
          formulae
          and other basic formulae
          is given in Waves file:
          doppler_effect_classical_derivation.html:  Derivation
                    of the Doppler effect in a medium in the classical limit---which may be this file.
           
          Presentation and Explication:
           
           From the most basic formula,
           all other basic classical Doppler effect
           formulae
           for observer motion in the direction
               of wave propagation
           can be derived.
            
         
           
            
            
            
            
            
            
             In fact, the source is also an observer.
             Thus, v_source_i is positive/negative when the
             source is moving in/opposed to the
             wave propagation direction.
              
              Just to emphasize again,
              no one measures λ_source if v_source ≠ 0 and everyone does if v_source  = 0
              since λ = λ_source in this case. 
               
               
             Note what we mean by length
             is a difference in spatial position that can be measured at one instant in time.
             You may often measure length
             in some other way, but it is NOT a
             length if it CANNOT
             be measured at one instant in time.
               
           
            
            
            
            
          
           
          
Credit/Permission:  ©
          David Jeffery,
          2022 / Own work.
          Local file:  local link:  doppler_effect_classical_formulae.html.
  f_i = f(1 - v_i/v_ph)  or  f = f_i/(1 - v_i/v_ph) , 
            where
            v_i is the
               velocity
               relative to the 
               medium 
               of observer i moving in the direction
               of wave propagation,
            v_i is negative
               if observer i is actually moving opposite to the
               direction
               of wave propagation,
            f_i is the frequency
              observed by observer i,
            f is the frequency
              observed by an observer 
              at rest
              in the 
        medium  
            and v_ph is the
            (medium)
            phase velocity
(i.e., the
 velocity of 
 wave propagation relative
   to the medium).
           
  f_2/(1 - v_2/v_ph) =  f = f_1/(1 - v_1/v_ph)  or  
  f_2 f_1[(1 - v_2/v_ph)/(1 - v_1/v_ph)]  ,
            where
            frequency f is again just
            the frequency observed
            by an observer at rest
            in the medium.
            
           
v_i/v_ph = 0 gives f_i = f
               and their is NO
               Doppler shift since
               the observer is  at rest
               in the medium. 
               1 > v_i/v_ph > 0 gives f_i < f
 
             for 
             redshift.
             The observer is running away from the waves. 
             v_i/v_ph = 1 gives f_i = 0
               and observer is keeping pace with the 
               waves and they
               are at rest with respect to
               the observer.
               For
      sound waves,
               the observer is transonic.
             v_i/v_ph > 1 gives f_i < 0
               and the observer is running in to the back end of the 
               waves.
               For
      sound waves,
               the observer is supersonic.
             v_i/v_ph < 0 gives f_i > f
               for a blueshift.
               The observer is plowing into the waves.
               Note a blueshift is can be considered
               a negative 
               redshift and often is in
               astronomy.
               
  λ_source = v_ph/f_source .  
            When the source is moving relative to the
            medium
            at velocity
            v_source, ALL observers in the
            wave propagation
            direction NO matter what their 
            velocity 
            observe       
             
  λ = λ_source*(1-v_source_i/v_ph)  
             including an observer moving with 
             velocity v_source_i.
             Note λ has NO observer subscript i because 
             it is the same for ALL observers.
             It is subscripted for source as we have already done.
             
  f = f_source/(1 - v_source_i/v_ph) and λ = λ_source*(1-v_source_i/v_ph)  .  
            Note v_source_i is positive/negative for source motion in/opposite the
            direction of wave propagation.
            It is easiest to understand the case for 
sound waves
            and
when viewing the animations
   for sound waves in
Waves file:
          doppler_effect_sonic.html.
            Behold:
            
           
v_source_i/v_ph = 0 gives f = f_source and λ = λ_source
               and their is NO
               Doppler shift since
               the source is at rest
               in the medium.
               1 > v_source_i/v_ph > 0 gives f > f_source and λ < λ_source 
             for a blueshift relative to the source.
             v__source_i/v_ph = 1 gives f = ∞ and λ = 0
               and source is keeping pace with the
               waves and they
               are piling on top of each other. 
               For
      sound waves,
               the source is transonic
               and creating a sonic boom
               right where it is.
               The observer right on the line of source motion (as we have been assuming),
               only receives one super wave pulse moving in the direction of source motion
               when the source moves by them:  e.g.,
               they receive a sonic boom for 
sound waves.
    It helps to view the animations
   for sound waves in
Waves file:
          doppler_effect_sonic.html.
             v_source_i/v_ph > 1 gives f < 0 and λ < 0
               and the source is running ahead of the
               waves.
               The negative
                frequency f
               and wavelength
               simply mean that the observer observes the 
               waves moving in the direction
               of the source motion in reverse order from emission.
               It helps to view the animations
   for sound waves in
Waves file:
          doppler_effect_sonic.html. 
               For
      sound waves,
               the source is supersonic
               and is creating sonic boom
               along a Mach cone. 
                
             v_source_i/v_ph < 0 gives f < f_source and λ > λ_source
             and the observer observes a redshift
             relative to f_source since the source is moving away from the observer.
               
          File: Waves file:
          doppler_effect_classical_formulae.html.