NBC News has confirmed through two federal sources the shooting suspect's name is James Holmes. He is 24 years old.

Police say Holmes "appeared" at the front of one of the theaters, threw some type of gas or explosive device and started shooting. Police recovered a rifle, a handgun and a gas mask when they arrive on the scene. Another gun was discovered later inside the theater. Holmes was wearing a bulletproof vest, according to federal authorities.