More than a million people have taken to the streets of Sao Paulo to celebrate the Brazilian city's tenth annual Gay Pride parade.
Revellers dressed in costumes danced through one of the main avenues, as music blared out of huge loudspeakers.
One report quoted police as saying that 2.4 million people were at the parade, which organisers say has become the largest of its kind in the world.
Gay rights activists say discrimination is still widespread across Brazil.
Eighty-one Brazilians were killed last year because of their sexual orientation, campaigners say.
The theme for this year's event is "homophobia is a crime" to highlight proposed anti-discrimination laws.
World Cup costumes
When the parade was first staged, it attracted just 2,000 people.
Police estimate this year's festival has attracted 2.4m people, compared with the official crowd count of 1.8m last year, the Associated Press reports.
Revellers dressed up as Batman, Elvis Presley, Cinderella and Marie Antoinette. Some took their inspiration from the Oscar-winning movie Brokeback Mountain, whose lead characters are two gay cowboys.
Others also gave a nod to the football World Cup, dressing in the team colours of yellow, green and blue.
Floats made their way down the Avenida Paulista in the financial heart of Sao Paulo, as dance music blared out of huge loudspeakers.
But correspondents say that behind the revelry is a serious message.
Gay rights activists say they face many challenges in Brazil
One participant, Juliana, said the level of tolerance of homosexuality varied greatly across different parts of Brazil.
"Here I guess we are privileged, in Sao Paulo because here we can be open almost every day. But for most of the people, they can't be open every day at all."
New laws would allow civil unions between same-sex couples across Brazil, which are permitted only in the southernmost state of Rio Grande do Sul.
But the Roman Catholic Church opposes gay marriage in the country, which is the world's largest Catholic nation.
Activists say they no longer want to be seen as sinners by the Church.
"The traditional church doesn't want us," said Pastor Justino Luis who started a church serving mostly gay and lesbian parishioners.
"I know [God] loves me the way I am, and I know when he made me he planned for me to be the way I am," he said.