Il gerundio, come tutti i modi indefiniti, non ha mai valore deittico, cioè non ha il potere di situare un evento in un momento del tempo; ha, invece, sempre valore anaforico, ovvero serve a situare l'evento in rapporto temporale (di contemporaneità, anteriorità o posteriorità) rispetto a un altro evento, a prescindere dal momento nel tempo in cui quest'ultimo si situa. La risposta alla sua prima domanda, pertanto, è sì. La risposa alla seconda domanda è più sfumata: in astratto è vero che il soggetto di cantando a squarciagola (= nessun soggetto) non coincide con quello di si immaginavano (= nuove emozioni), quindi il gerundio non dovrebbe essere usato e si dovrebbe, invece, usare la costruzione esplicita nella subordinata (quando si cantava / cantavamo a squarciagola...) oppure quella impersonale nella reggente (che, però, è sgradita ai parlanti con il complemento oggetto plurale: cantando a squarciagola si immaginava nuove emozioni). In pratica, però, la presenza del soggetto logico noi è talmente forte sia dietro cantando sia dietro si immaginavano che la deviazione dalla norma è appena percepibile e tutto sommato trascurabile. 
La perifrasi stare + gerundio (la congiunzione mentre non è significativa), infine, ha la funzione di sottolineare che l'evento avviene lungo un lasso di tempo all'interno del quale avviene un altro evento. La stessa funzione, ma in modo meno esplicito, può essere assolta dal presente (nel presente), dall'imperfetto (nel passato) e dal futuro (nel futuro): sto parlando = 'parlo'; stavo parlando = 'parlavo'; starò parlando = 'parlerò'.
Fabio Ruggiano