AudioSource.Pause not working?

my game pauses fine , but audioSource is not pausing why ?
and in audiosource , playOnAwake is false.

public bool isPaused;
	public GameObject pauseMenuCanvas;
	public AudioSource AC;
	public GameObject TouchToPlay;


	void Start () {
		pauseMenuCanvas.SetActive (false);
		TouchToPlay.SetActive (true);
		Time.timeScale = 0f;
	}


	void Update () {
		if (isPaused) {
			AC.Pause ();
			pauseMenuCanvas.SetActive (true);
			Time.timeScale = 0f;
		} else if(!isPaused){
			pauseMenuCanvas.SetActive (false);
			AC.UnPause ();
			Time.timeScale = 1f;
		}
		if (Input.GetKeyDown (KeyCode.P)) {
			isPaused = !isPaused;
		}
	}


	public void TouchPlay(){
		TouchToPlay.SetActive (false);
		Time.timeScale = 1f;
		AC.Play ();
	}

bool is_Paused;
public AudioSource asource;

	void Update () {
		if (Input.GetKeyDown (KeyCode.P)) {
			if (!is_Paused) {
				asource.Pause ();
				is_Paused = true;
			} else {
				asource.UnPause ();
				is_Paused = false;
			}
		}
	}

@EagleDanger you have to be careful about codes in update

If the timeScale = 0f i think the script won’t update.