One video filmed through a doorway appears to show a woman looking at a teenage boy lying in a pool of blood on a pavement, as a riot policeman swings a baton at people running past him.
Another from the southern city of Shiraz shows a crowd trying to help a motionless man on the ground, as other people retreat along a smoke-filled street amid the sounds of shouting, screaming and gunfire.
In a third. taken from inside a moving car in the capital, Tehran, a woman can be heard screaming as plainclothes security personnel or militiamen detain a man.
این ویدیو که مربوط به تهران خیابان ستارخان است امروز به دست بیبیسی فارسی رسیده. زمان این ویدیو برای بیبیسی فارسی مشخص نیست اما مربوط به اعتراضات اخیر در پی گران شدن #بنزین است. pic.twitter.com/TSccZc6iOG— BBC NEWS فارسی (@bbcpersian) November 22, 2019
It was the fear of such footage reaching the outside world that prompted the authorities in Iran to shut down access to the internet for more than eight days earlier this month, as protests against a sharp rise in the price of petrol spread across the country.
Now the internet has been partially restored, videos have been appearing on social media that paint a picture of a government crackdown more brutal and bloodier than many had feared. The identities and stories of the protesters who lost their lives have also emerged.
The Iranian authorities have not released any official figures about casualties, but Amnesty International has received what it considers credible reports that at least 143 protesters were killed after the protests erupted on 15 November.
The human rights group says the deaths resulted almost entirely from the intentional use of firearms by the security forces - though one man was reported to have died after inhaling tear gas and another after being beaten.
Digital experts say nothing to date equals Iran’s internet shutdown in logistical complexity. Seems that #Iranian authorities don’t want us to see how they are shooting unarmed protesters from rooftops of government buildings like this one. pic.twitter.com/ADWKkDrLuz— Amnesty International (@amnesty) November 22, 2019
Amnesty believes the death toll is significantly higher, and activists and official sources inside Iran have told BBC Persian that it exceeds 200.
An Iranian diplomat dismissed such figures as "speculative" last week and accused "Western entities" of making "baseless allegations", while President Hassan Rouhani blamed the protests on "subversive elements" acting on a plan hatched by Iran's foreign enemies.
However, the videos filmed by Iranians on their smartphones - many of them graphic and difficult to watch - have cast doubt on the government's claims.
The footage appears to show security personnel and members of the paramilitary Basij force, which is frequently used to help suppress dissent, beating up unarmed protesters in the streets and firing live round into crowds at close range.
'Thousands injured or detained'
Continuing calls for donations of blood by Iranian health officials also suggest that thousands of people have been injured in the crackdown.
Hospital staff have told BBC Persian that security officers are going to hospitals to look for wounded protesters. One doctor said the officers were removing bandages to check whether they were covering bullet wounds and arresting anyone who had them.
The judiciary said on Friday that about 100 "leaders, heads and main figures of the unrest" have been arrested by the Revolutionary Guards, and that a large number of people who had taken part in protests but not caused any damage had been released.
But sources inside Iran have told BBC Persian that the number of detainees is in the thousands.
In some cities, military barracks, sports venues and schools have been converted to detention centres. A video from a person living in a high-rise building near one school appeared to show detainees being manhandled by security officers.
The regime was so scared of losing control, that they closed down schools in Tehran during #IranProtests.— Masih Alinejad 🏳️ (@AlinejadMasih) November 23, 2019
They blamed these closures on the "snow".
But, they actually used school properties for arresting protesters, as this video shows.
Iran's dictators will lose this fight. pic.twitter.com/0jG2goFBDa
Despite the assertion by the Supreme Leader Ayatollah Ali Khamenei that the protesters had "roots outside of the country", the Ministry of Intelligence told parliament that most of those held were unemployed youths from poor families.
'We live like beggars'
Journalists based in Iran were limited in their ability to report on the protests or were too afraid to do so, and those based elsewhere were hampered by the internet shutdown.
But BBC Persian, which is banned from Iran, was able to get in touch by telephone and other means with citizen journalists, activists and other trusted sources on the ground.
Despite the judiciary warning people that circulating videos of the unrest was a criminal offence, we received footage from locations all over the country.
In Mariwan, a small Kurdish border town in Iran at least ten people killed in anti-Government protests. The city looks like war zone. #iranprotest #kurdistan #bbcpersian #bbcnews pic.twitter.com/V7L3jZ5zt3— Jiyar Gol (@jiyargol) November 20, 2019
The videos showed the protesters targeting symbols of the government, the clerical establishment and the security forces, as well as banks and petrol stations.
The epicentres of the protests were predominantly Kurdish towns on the western border with Iraq, as well as areas on the outskirts of major cities like Tehran, Karaj and Shiraz. All are places with among the highest levels of unemployment in the country.
"The price of petrol is rising, we are poorer," protesters in Shiraz chanted in one video.
"The supreme leader lives like a God. We, the people live like beggars," said people in Malard, near Tehran in another.
"No to Gaza, no to Lebanon. We sacrifice our lives for Iran" was a chant heard in Isfahan.
Clearly, there is disquiet about Iran's activities in the Middle East. The Islamic Revolution Guard Corps (IRGC) has spent billions of dollars arming, training and paying militias in the region, saying that if the force does not fight Iran's enemies beyond its borders then it will have to face them on the streets of Tehran.
But the protesters in the streets believe the money should have been invested in their country and their future.
US sanctions reinstated by President Donald Trump last year when he abandoned a nuclear deal with Iran have targeted the country's oil and banking sectors. The sanctions, combined with corruption and mismanagement, have pushed the Iranian economy to the brink of collapse. But the crisis has not persuaded the government to change its policies.
State media and newspapers close to the security forces depicted the protesters as hooligans, who they said were seeking to loot and vandalise public property.
But the stories BBC Persian has heard from the families of those killed paint a different picture.
Fatima, a 40-year-old mother of two, was one of the demonstrators killed near Tehran.
Her family said she went out to protest against unemployment and inflation.
Another victim was Armin Qaderi, a 10-year-old boy, from Kermanshah. He died after going out to buy bread, according to his family.
Many families told BBC Persian that their relatives went out to express their anger at the economic crisis but that the authorities answered them with bullets.