The video starts with a man screaming in a police officer's face.
"For what?!" the man yells on a Baltimore sidewalk.
The officer responds by shoving the man backward against a brick wall.
"Don't touch me!" the man yells, slapping the cop's hand away.
Then the video gets really ugly.
The officer starts throwing punches and continues pummeling the man for the next 12 seconds, the bystander's video shows.
They both eventually fall to the ground, and the officer pins the man down with his arm across his neck. The man's blood starts pooling on the sidewalk.
What happened Saturday morning marks the latest controversial use of force against a black person by police.
The Baltimore officer who attacked the man is also black. So is another officer who witnessed the attack, but did little to intervene.
Interim Police Commissioner Gary Tuggle said he was "deeply disturbed" by the incident, and the officer seen throwing punches was quickly suspended. The Baltimore Department tweeted late Sunday that the officer resigned.
The other officer has been placed on administrative duties pending the outcome of an investigation, Baltimore police said. The state attorney's office was also notified.
Police have not identified either officer.
What led up to the attack
The incident began around 11:45 a.m. while officers were working on "a crime suppression detail related to crime in the area," Baltimore police spokesman T. J. Smith said.
"Two officers encountered a man, whom one of the officers is familiar with," police said.
"After the first encounter, officers released him and ... approached him again to provide him a citizen's contact sheet," police said.
Smith said officers are required to fill out a contact sheet any time they talk to a citizen in relation to any type of investigation, no matter how brief the encounter.
"When he was asked for his identification, the situation escalated when he refused," police said.
Police did not identify the man, but CNN affiliate WJZ identified him as Dashawn McGrier.
He was taken into custody and was also given medical treatment for his injuries, police said. He was not charged with any crimes and was released from custody, police said.
The man's attorney, Warren Brown, is planning to file a lawsuit, CNN affiliate WBAL reported. Brown has not responded to CNN's request for comment.
'Zero tolerance' for this behavior
Tuggle said he was appalled by the incident and has "zero tolerance for behavior like I witnessed on the video."
"Officers have a responsibility and duty to control their emotions in the most stressful of situations," the interim police commissioner said.
Baltimore is still dealing with the aftermath of the 2015 death of Freddie Gray, who died in custody a week after a police encounter.
Days of peaceful protests devolved into riots, with assaults on police, looting, arson and the devastation of businesses.
Baltimore Mayor Catherine Pugh said in a tweet that the city is working hard to earn and maintain the trust of the public. She said she has demanded answers and accountability for what happened Saturday.
"We are working day and night to bring about a new era of community-based, Constitutional policing and will not be deterred by this or any other instance that threatens our efforts to reestablish trust of all citizens in the Baltimore Police Department," she said.