The accident just outside a suburban station in the city's west end caused Via Rail to cancel trains on its Ottawa-Toronto route.
Witness Mark Cogan told C424 TV said the rail barrier was down.
"The train is going through," Cogan said. "And I was just looking around, just watching things happen.
"And noticed that in the bus lane, the double-decker bus ... I saw him, and he just kept going.
"I just thought maybe there's a side way around or something, but instantly, he just . he smoked the train.
"He went through the guard rail and just hammered the train, and then it was just mayhem."
More top news
Choir wins public vote, while judges pick dancers ahead of 12-year-old singer-songwriter Henry Gallagher.
The hunt for murder suspect Jed Allen has ended after police found his body two days after discovering his mother, stepdad and sister dead.
A woman who had been searching for her mother for more than 10 years has been reunited with her after posting an appeal on social media.