Police in Berlin have clashed with thousands of protesters who were trying to block a group of far-right activists from staging a march through the German capital.

Officers said about 2,000 people stood in the way of the planned route of a demonstration organised by the far-right National Democratic Party (NPD).

The protesters threw stones, bottles and fireworks at authorities, injuring several policemen, the AP news agency reported.

"We ran into a lot of disruptions staged by the counter-protesters," police spokesman, Thomas Neuendorf, said.

"We witnessed stones and bottles thrown at police, pyrotechnics were employed and things were set on fire.

"Numerous policemen were injured, and arrests were made for trespassing, resistance against state authorities and attempts to aid jailbreak."

The NDP had intended to go through Berlin's Kreuzberg district, which is home to a large immigrant population.

Neuendorf said the 100 far-right activists were able to proceed only for a couple of hundred metres before their path was blocked.

He added that four NPD supporters and nine counter-demonstrators had been arrested by mid-afternoon on Saturday.

Germany's security services have said that the party has a racist, xenophobic and anti-Semitic agenda.