A gunman has been reported to have held as many as 16 bus passengers hostage, threatening to burn them alive.

Police said this afternoon that the hostage-taker had been shot after a sniper was placed nearby

An armed man has been shot after he held dozens of people hostage on a bus in Rio de Janeiro, Brazil and threatening to set the vehicle on fire, Brazilian police have said.

The Federal Highway Police said negotiations were under way with the man who has been holding 37 people hostage since about 5.30am local time on a busy bridge linking the suburb of Sao Goncalo to central Rio.

At least six hostages were released during the siege and police said they told authorities the man had poured petrol in the bus and threatened to set it on fire. Officials said the man identified himself as a policeman but this has not been confirmed.

A woman faints moments after being released off the bus during the hostage situation (Picture: EPA)

The man did not make any particular demands and appears to to have ‘psychological problems’, a spokesman for the traffic police said on TV Globo.

Rio’s elite police force known as BOPE is in charge of the negotiations, and a sniper was placed nearby.

Traffic has been blocked in both directions on the bridge, with hundreds of vehicles stuck in queues. Sao Goncalo is a violent, impoverished suburb separated from Rio by Guanabara Bay.