15. A system comprising: one or more processors; and memory, coupled to the one or more processors, the memory comprising instructions executable by the one or more processors to perform operations including: generating a sequential alignment of script words from script data to the dialogue words from audio data, the audio data including timecodes associated with the dialogue words; matching at least some sequences of the script words to corresponding sequences of the dialogue words to determine hard alignment points; partitioning the sequential alignment of the script words into alignment sub-matrices, the bounds of the alignment sub- matrices being defined by adjacent hard alignment points, and the alignment sub-matrices comprising a sub-set of the script words and a corresponding sub-set of the dialogue words that occur between the hard alignment points; removing symbols and punctuation from the sub-set of script words in the alignment sub-matrices; aligning the sub-set of script words in each alignment sub-matrix of the alignment sub-matrices with a corresponding sub-set of dialogue words in each alignment sub-matrix of the alignment sub-matrices to determine a best fit alignment, comprising: filtering the sub-set of dialogue words to heuristically remove stop words; matching the sub-set of the script words and the corresponding sub-set of the dialogue words based on phonetic matching; using a word edit distance algorithm to match the script words in each alignment sub-matrix of the alignment sub-matrices with the corresponding sub-set of the dialogue words in each alignment sub-matrix of the alignment sub-matrices to determine soft alignment points; determining timecodes for the hard and soft alignment points; interpolatinge, based on the timecodes associated with at least some matched dialogue words, to determine timecodes for one or more unmatched script words; and generating time-aligned script data comprising the sub-set of script words and their determined timecodes.
15. A system comprising: one or more processors; and memory, coupled to the one or more processors, the memory comprising instructions executable by the one or more processors to perform operations including: generating a sequential alignment of script words from script data to the dialogue words from audio data, the audio data including timecodes associated with the dialogue words; matching at least some sequences of the script words to corresponding sequences of the dialogue words to determine hard alignment points; partitioning the sequential alignment of the script words into alignment sub-matrices, the bounds of the alignment sub- matrices being defined by adjacent hard alignment points, and the alignment sub-matrices comprising a sub-set of the script words and a corresponding sub-set of the dialogue words that occur between the hard alignment points; removing symbols and punctuation from the sub-set of script words in the alignment sub-matrices; aligning the sub-set of script words in each alignment sub-matrix of the alignment sub-matrices with a corresponding sub-set of dialogue words in each alignment sub-matrix of the alignment sub-matrices to determine a best fit alignment, comprising: filtering the sub-set of dialogue words to heuristically remove stop words; matching the sub-set of the script words and the corresponding sub-set of the dialogue words based on phonetic matching; using a word edit distance algorithm to match the script words in each alignment sub-matrix of the alignment sub-matrices with the corresponding sub-set of the dialogue words in each alignment sub-matrix of the alignment sub-matrices to determine soft alignment points; determining timecodes for the hard and soft alignment points; interpolatinge, based on the timecodes associated with at least some matched dialogue words, to determine timecodes for one or more unmatched script words; and generating time-aligned script data comprising the sub-set of script words and their determined timecodes. 18. The system of claim 15 , wherein the instructions are executable to perform operations further including iteratively increasing the length of the sequences of the script words that correspond to the sequences of the dialog words to improve said match.