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
Jeremy Corbyn has launched a fresh attack on "ideological" Conservative cuts ahead of Thursday's elections.
Daddy Day Care star Eddie Murphy is celebrating the birth of his ninth child.
A huge wildfire has prompted the evacuation of an entire Canadian city.