2012 kesäolympialaiset alkoivat, kun Cochrane kilpaili ensimmäisenä kilpailupäivänä 400 metrin vapaasti. Cochrane voitti ottelunsa ja pääsi finaaliin viimeisellä sijalla. Kuitenkin, kun Park Tae-hwanin diskvalifiointi kumottiin, Cochrane työnnettiin ulos finaalista ja jäi uimaan siinä 1/100 sekunnissa. Seuraavaksi hän osallistui 1500 metrin kilpailuun.
Hän sijoittui kolmanneksi. Lopulta Cochrane onnistui uimaan Oussama Melloulia edelle hopeamitalin ja saavutti sen henkilökohtaisessa parhaassa ajassa. Toisen olympialaisensa jälkeen Cochrane vahvistui median mukaan Kanadan tukijalkapalloilijaksi, joka rakentaa uimajoukkuettaan tulevaisuuteen, kun hän ilmoitti yrittävänsä uida Kanadan puolella vuoden 2016 kesäolympialaisissa Rio de Janeirossa.