Bangkok: A cargo train collided with a public bus at a railway crossing in central Bangkok on Saturday, killing at least eight people and injuring more than 20 others.

The collision occurred in the late afternoon near an airport railway station, according to local news reports. The Erawan Medical Centre, the city's emergency medical service, confirmed the casualty figures.

Video footage shared on social media captured the moment of the crash, showing a line of traffic halted at the crossing when the train struck the orange commuter bus. The force of the collision dragged the bus and several surrounding vehicles along the tracks before the bus erupted in flames. The impact also threw several motorcycles and their riders onto the roadway.

The subsequent video showed emergency responders entering the burned wreckage of the bus once firefighters extinguished the blaze.

Deputy Transport Minister Siripong Angkasakulkiat travelled to the scene and told reporters that all of the deceased were recovered from inside the bus. He noted that the total number of passengers on board at the time of the crash remained undetermined.

Addressing reports that the bus had stopped directly on the tracks and that the crossing gates failed to lower correctly to halt motorists, Siripong stated that the circumstances remain under investigation.

A witness, Kittipong Raksa, said he had parked his vehicle near the crossing after hearing the audio signal that warns drivers of an approaching train.

"I heard a thud and then another. I heard something hitting my car," Kittipong said. "Then I saw the train pass, dragging the bus with it."

Kittipong added that following the crash, he discovered an injured person with a fractured leg trapped beneath his vehicle. He noted that he did not see the crossing barriers lowered before the collision occurred.

With inputs from AP