Capt. Don Stanton, with the Harris County Sheriff's Office Marine Division, said 19-year-old Diego Lopez lost his footing and went down.
"Came back up one more time, went back down again and then he was gone," Stanton said.
Diego was there with friends. He was a strong swimmer, but even then, the current was too strong.
Wilson Gomez saw it all happen. He said it all happened quickly.
Body of 19-year-old man found in San Jacinto River after being reported missing
Lopez was yelling out for help, struggling in the river.
He says he will be forever traumatized. He can't erase the image of his friend drowning and not being able to do anything about it.
Diego's family is now hoping to send him to Guatemala where they are from.
A friend created a GoFundMe account, hoping to raise money they need to give Diego a proper burial.
You can also make a donation to the family at Wells Fargo Bank, using the account of Leticia E. Lopez. The account number is 5354108614.
Gomez says while he has no words for the pain he feels in his heart, he hopes others learn from this tragedy and always wear a life vest.
Follow Mayra Moreno on Facebook and Twitter.
WATCH: Captain sounds alarm over swift current after drowning