The police officer who shot and killed Philando Castile in a St. Paul, Minn., suburb in July has been charged with second-degree manslaughter.

Ramsey County Attorney John Choi said the use of force by St. Anthony police Officer Jeronimo Yanez was not justified. A review of dashboard camera video revealed that "no reasonable officer" would have used deadly force in this circumstance, Choi said.

"Philando Castile was not resisting or fleeing," Choi added at a press conference Wednesday. "There was absolutely no criminal intent exhibited by him throughout this encounter. ...He was respectful and compliant. ... He volunteered in good faith that he had a firearm beyond what the law requires."

The beloved school cafeteria manager was shot and killed by Yanez during a routine traffic stop. The shooting unleashed days of protests and some violent clashes between demonstrators and police.

An NPR review of court records showed that Castile, a 32-year-old black man, had been stopped 46 times before by police.

Choi says that when Castile was stopped July 6 in Falcon Heights, Minn., the car was registered under his name and his license was not suspended. Choi did not release dashcam video, but described it as showing Castile turning over his proof of insurance and then "calmly and in a non-threatening manner" informing the officer that he was carrying a weapon.

Yanez warned Castile not to reach for the gun. He shot Castile seven times within a minute of the traffic stop.

Castile's final words were, "I wasn't reaching for it."

Investigators found Castile's gun inside his pocket. They also found his Minnesota driver's license and his permit to carry a weapon.

Copyright 2016 NPR. To see more, visit http://www.npr.org/.