1. A method comprising: (a) receiving data for a plurality of segments of a passage in a source voice, wherein the data for each segment of the plurality models a prosodic component of the source voice for that segment; (b) identifying a target voice entry in a codebook for each of the source voice passage segments, wherein each of the identified target voice entries models a prosodic component of a target voice for a different segment of codebook training material; and (c) generating, in one or more processors, a target voice version of the plurality of passage segments by altering the modeled source voice prosodic component for each segment to replicate the target voice prosodic component modeled by the target voice entry identified for that segment in (b), and wherein the codebook includes multiple source voice entries, each of the multiple source voice entries models a prosodic component of the source voice for a different segment of the codebook training material, each of the multiple source voice entries corresponds to a target voice entry modeling a prosodic component of the target voice for the segment of the codebook training material for which the corresponding source voice entry models the prosodic component of the source voice, operation (b) includes, for each source voice passage segment, identifying a target voice entry by comparing data for the source voice passage segment to one or more of the multiple source voice entries, each of the multiple source voice entries and its corresponding target voice entry includes a plurality of transform coefficients representing a contour for the modeled prosodic component, and operation (b) includes, for each source voice passage segment, identifying a target voice entry by comparing transform coefficients representing a contour for the prosodic component of the source voice passage segment to the transform coefficients for one or more of the multiple source voice entries.