1. A method comprising: determining, by a computing device, a video including ad slots inserted within the video; generating, by the computing device, a caption curve for a caption file of captions for the video based on start times and stop times for caption segments in the caption file, wherein the caption segments in the caption file were generated for the video without including ad slots; determining, by the computing device, a speech velocity of characters per a time unit using a set of caption files that include captions for a set of videos, wherein the speech velocity is used to estimate how fast speech occurs for caption segments in the set of videos; detecting, by the computing device, when the start time or the stop time of one or more caption segments should be adjusted based on the speech velocity, a number of characters in caption segments in the caption file, and a duration between the start time and the stop time; revising, by the computing device, the start time or the stop time for the one or more caption segments associated with the caption curve based on the detecting; determining, by the computing device, a speech probability curve based on audio of the video, wherein the speech probability curve indicates a probability of speech occurring in the video; and correlating, by the computing device, the speech probability curve to the revised caption curve to align the caption segments of the caption file with speech of the video.
1. A method comprising: determining, by a computing device, a video including ad slots inserted within the video; generating, by the computing device, a caption curve for a caption file of captions for the video based on start times and stop times for caption segments in the caption file, wherein the caption segments in the caption file were generated for the video without including ad slots; determining, by the computing device, a speech velocity of characters per a time unit using a set of caption files that include captions for a set of videos, wherein the speech velocity is used to estimate how fast speech occurs for caption segments in the set of videos; detecting, by the computing device, when the start time or the stop time of one or more caption segments should be adjusted based on the speech velocity, a number of characters in caption segments in the caption file, and a duration between the start time and the stop time; revising, by the computing device, the start time or the stop time for the one or more caption segments associated with the caption curve based on the detecting; determining, by the computing device, a speech probability curve based on audio of the video, wherein the speech probability curve indicates a probability of speech occurring in the video; and correlating, by the computing device, the speech probability curve to the revised caption curve to align the caption segments of the caption file with speech of the video. 2. The method of claim 1 , wherein the caption curve indicates a first value when a caption segment is displayed and a second value when the caption segment is not displayed.