Shots have been fired at an opposition rally in Tehran where more than 100,000 Iranians were protesting against the re-election of President Mahmoud Ahmadinejad.
An Associated Press photographer saw one person killed when shots were fired from a compound for pro-government militiamen. Several other people appeared to have been seriously wounded in Tehran's Azadi Square. BBC's Persian service quoted an eyewitness saying that four protesters have been killed.
A reporter on Iran's English-language Press TV said: "There has been sporadic shooting out there ... I can see people running here."
Speaking live on the air, he said: "A number of people who are armed ... I don't know exactly who they are, but they have started to fire on people, causing havoc in Azadi Square."
Local residents said they had heard shooting in three districts of northern Tehran.