Moonlight won the Oscar for best picture on Sunday, beating favorite La La Land for the movie industry's most prestigious award.

But in a highly unusual mishap, presenter Fay Dunaway mistakenly initially announced that musical La La Land had won, causing confusion and uproar on Hollywood's biggest night. Fellow presenter Warren Beatty said he had been given the wrong envelope to open.

Emma Stone won best actress for the musical, and Manchester by the Sea star Casey Affleck was named best actor on a night where US President Donald Trump was the butt of numerous jokes, capping a Hollywood awards season marked by fiery protests at his policies.

La La Land director Damien Chazelle, 32, became the youngest person to ever win a best director Oscar.