A Vancouver man is recovering after allegedly being punched in the face while singing Christmas carols.

A suspect in Saturday's incident has been charged with assault and Vancouver police are trying to determine if the attack constitutes a hate crime.

The victim, who does not want to be identified, said in an interview with CTV he was walking past St. Paul's Hospital on Burrard Street with friends. Inspired by the hospital's glittering Christmas light display the man broke into song.

"We were just singing Christmas carols," he said. "[He] said you fag! Screaming and yelling and jammed me a couple of times and my friend got on phone and called police."

The victim said he was not seriously injured, despite being hit in the temple three times.

Twenty-one-year-old Christopher Clifford Mercier of Prince George was arrested a few blocks away and charged with assault. He is due to appear in court December 15th.

Constable Tim Fanning of The Vancouver Police Department said Mercier allegedly told the victim and his friends to "shut up" and then attacked.

"This assault is being followed up by our officer that investigates hates crimes," said Cst. Fanning.

The arrest comes a month after dozens marched in Vancouver's West End in response to a violent attack on a gay man. Jordan Smith was knocked to the ground and suffered a broken jaw.

With a report from CTV British Columbia's Carrie Stefanson