Ryan Lochte knows he will have to produce "something special" to beat long-time friend Michael Phelps in the Olympic Games this year.

Phelps retired after adding another four Olympic gold medals to his tally in London four years ago, but opted to resume his career in 2014.

The legendary American will be looking to add to his incredible haul of 18 Olympic golds - and 22 medals in total - in Rio.

Phelps could only finish fourth in the 400 metre individual medley final in London as Lochte won gold, but the former edged out his compatriot to win the 200m individual medley.  

And Lochte is well aware that he must be at his very best in order to touch the wall ahead of Phelps in Brazil.

The 31-year-old told Omnisport: "I am the one to say there is no such thing as a perfect race but honestly in order to beat him or get a gold at the Olympics it's going to take something special for me to do.

"I know I'm capable of doing it it's just a matter of time and when that perfect race will happen."

Lochte said he is not contemplating retiring as he prepares to try and add to his 11 Olympic medals - with five of those being gold.

He added: "As far as me I'm going to keep swimming until I stop having fun. I could wake up tomorrow and be like ah, I don't want to do this and then I will stop. But as long as I am having fun I will keep swimming."