1. A method, including: matching, using a processor, phrase units of a received input string to audio segments from a plurality of audio segments including, for each phrase unit, matching the phrase unit to an audio segment using properties of the phrase unit in comparison to properties of other units in a hierarchy of units including phrases and words and using articulation relationships between the phrase unit and the other units to locate matching audio segments from a plurality of selections including determining concatenation costs and unit costs, where concatenation costs measure how well a unit fits with a neighbor unit and unit costs measure a similarity or difference from an ideal model; identifying unmatched phrase units that are not matched to audio segments; parsing the unmatched phrase units into word units; matching the word units to audio segments including, for each word unit, matching a word unit to an audio segment using properties of the word unit in comparison to properties of other units in the hierarchy of units including the phrases and the words and using articulation relationships between the word and the other units to locate matching audio segments from the plurality of selections; and synthesizing the received input string including combining the audio segments associated with the matching phrase units and the matching word units.