An encounter that could’ve turned deadly for a police officer in St. Louis County, was caught on police dash cam video. The video shows a suspect assaulting an officer in Calverton Park and nearly getting a hold of the officers gun during a traffic stop Wednesday morning.

"For law enforcement, it’s one of the least routine assignments that we have,” said Calverton Park police officer Chris Robertson.

Officer Alex Bowes, a two-year veteran on the police force, clocked Markarios Kirkwood, 43, of Ferguson, speeding 40 mph over the limit at 2:00 a.m. Wednesday on New Florissant Road.

"You are typically on a heightened sense of alert on every traffic stop," said Officer Robertson.

Before Officer Bowes approached the car, he suspected Kirkwood had been drinking because he hit the curb before pulling over. Once Officer Bowes got to the car, he asked for license and insurance. Kirkwood could not produce a license. Police said Officer Bowes also smelled weed in the car—something Kirkwood said he had been smoking. When Bowes told him to get out of the car, he said Kirkwood displayed a knife.

Officer Robertson said: "That's a very scary situation."

Officer Bowe’s dashcam video shows the suspect refusing to put his hands behind his back after being asked twice.

In the video, Kirkwood tries to make a run for it and then a fight breaks out. You can see Kirkwood punching the officer, while he's on his back.

"In every sense of the word, it is a fight for your life at that point," Officer Robertson said.

The fight goes on for about 5 minutes before the officer is able to subdue Kirkwood.

“This officer [Alex Bowes] did a fantastic job gaining control of the suspect being able to affect the arrest without having to use deadly force,” Officer Robertson said. “He's been commended for that.”

Kirkwood has been charged with felony resisting arrest and assault. He’s being held at the St. Louis County Jail on a $50,000 cash only bond. He also had previous charges in 2012 for armed robbery and unlawful use of a weapon.

Officer Bowes suffered minor injuries like scrapes and bruises. He’s back at work.